Make merge (#1912)

* Make merge

* Try to have the same build locally to reproduce an issue.
This commit is contained in:
Julien Palard 2022-10-19 14:43:37 +02:00 committed by GitHub
parent 900b88915a
commit 20eba35774
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
213 changed files with 16607 additions and 14206 deletions

View File

@ -66,14 +66,18 @@ jobs:
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- uses: actions/checkout@v2
- uses: actions/cache@v2
- uses: actions/checkout@v3
- uses: actions/cache@v3
with:
path: '~/cpython/'
key: '1'
- uses: actions/setup-python@v2
- uses: actions/cache@v3
with:
python-version: '3.9'
path: ~/.cache/pip
key: '1'
- uses: actions/setup-python@v4
with:
python-version: '3.10'
- name: Clone cpython
run: |
if [ ! -d ~/cpython ]; then
@ -88,9 +92,7 @@ jobs:
git -C ~/cpython checkout $(grep ^CPYTHON_CURRENT_COMMIT Makefile| cut -d= -f2)
- name: Prepare venv
run: |
# If the venv exists but is broken, drop it (happens on Python upgrades):
# see https://github.com/actions/setup-python/issues/170
[ -d $HOME/cpython/Doc/venv/bin/ -a ! -e $HOME/cpython/Doc/venv/bin/python ] && rm -fr $HOME/cpython/Doc/venv
make -C $HOME/cpython/Doc clean-venv
make -C $HOME/cpython/Doc venv
- name: sphinx-build
run: make -C $HOME/cpython/Doc SPHINXOPTS="-q -j4 -D locale_dirs=$HOME/locales -D language=fr -D gettext_compact=0" autobuild-dev-html

View File

@ -20,7 +20,7 @@
# from which we generated our po files. We use it here so when we
# test build, we're building with the .rst files that generated our
# .po files.
CPYTHON_CURRENT_COMMIT := 3c2a1e7f4af3c5c54e04dfe9ac3a68d2351b00fb
CPYTHON_CURRENT_COMMIT := b2db1c208066b67bdf57bf3799de50352fe63416
LANGUAGE := fr
BRANCH := 3.10

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-05-21 16:37+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2022-07-08 17:54+0200\n"
"Last-Translator: Julien Palard <julien@palard.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -52,8 +52,9 @@ msgstr ""
"et rédacteur de la plupart de son contenu ;"
#: about.rst:24
#, fuzzy
msgid ""
"the `Docutils <http://docutils.sourceforge.net/>`_ project for creating "
"the `Docutils <https://docutils.sourceforge.io/>`_ project for creating "
"reStructuredText and the Docutils suite;"
msgstr ""
"le projet `Docutils <http://docutils.sourceforge.net/>`_ pour avoir créé "

92
bugs.po
View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-05-21 16:37+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2022-07-08 17:50+0200\n"
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -130,25 +130,28 @@ msgid "Using the Python issue tracker"
msgstr "Utilisation du gestionnaire de tickets Python"
#: bugs.rst:47
#, fuzzy
msgid ""
"Bug reports for Python itself should be submitted via the Python Bug Tracker "
"(https://bugs.python.org/). The bug tracker offers a web form which allows "
"pertinent information to be entered and submitted to the developers."
"Issue reports for Python itself should be submitted via the GitHub issues "
"tracker (https://github.com/python/cpython/issues). The GitHub issues "
"tracker offers a web form which allows pertinent information to be entered "
"and submitted to the developers."
msgstr ""
"Les rapports de bogues pour Python lui-même devraient être soumis via le "
"l'outil de suivi des bogues (*Bug Tracker Python* — http://bugs.python."
"org/). Le gestionnaire de tickets propose un formulaire Web permettant de "
"saisir des informations pertinentes à soumettre aux développeurs."
#: bugs.rst:51
#: bugs.rst:52
#, fuzzy
msgid ""
"The first step in filing a report is to determine whether the problem has "
"already been reported. The advantage in doing so, aside from saving the "
"developers time, is that you learn what has been done to fix it; it may be "
"developers' time, is that you learn what has been done to fix it; it may be "
"that the problem has already been fixed for the next release, or additional "
"information is needed (in which case you are welcome to provide it if you "
"can!). To do this, search the bug database using the search box on the top "
"of the page."
"can!). To do this, search the tracker using the search box at the top of the "
"page."
msgstr ""
"La première étape pour remplir un rapport est de déterminer si le problème a "
"déjà été rapporté. L'avantage de cette approche, en plus d'économiser du "
@ -158,13 +161,13 @@ msgstr ""
"contribution est la bienvenue !). Pour ce faire, cherchez dans la base de "
"données de bogues grâce à la boîte de recherche en haut de la page."
#: bugs.rst:58
#: bugs.rst:59
#, fuzzy
msgid ""
"If the problem you're reporting is not already in the bug tracker, go back "
"to the Python Bug Tracker and log in. If you don't already have a tracker "
"account, select the \"Register\" link or, if you use OpenID, one of the "
"OpenID provider logos in the sidebar. It is not possible to submit a bug "
"report anonymously."
"If the problem you're reporting is not already in the list, log in to "
"GitHub. If you don't already have a GitHub account, create a new account "
"using the \"Sign up\" link. It is not possible to submit a bug report "
"anonymously."
msgstr ""
"Si le problème que vous soumettez n'est pas déjà dans l'outil de suivi des "
"bogues, revenez au *Python Bug Tracker* et connectez-vous. Si vous n'avez "
@ -173,29 +176,27 @@ msgstr ""
"dans la barre latérale. Il n'est pas possible de soumettre un rapport de "
"bogue de manière anonyme."
#: bugs.rst:63
#: bugs.rst:64
#, fuzzy
msgid ""
"Being now logged in, you can submit a bug. Select the \"Create New\" link "
"in the sidebar to open the bug reporting form."
"Being now logged in, you can submit an issue. Click on the \"New issue\" "
"button in the top bar to report a new issue."
msgstr ""
"Une fois identifié, pour pouvez rapporter un bogue. Sélectionnez le lien "
"*Create New* dans la barre latérale pour ouvrir un nouveau formulaire de "
"rapport de bogue."
#: bugs.rst:66
msgid ""
"The submission form has a number of fields. For the \"Title\" field, enter "
"a *very* short description of the problem; less than ten words is good. In "
"the \"Type\" field, select the type of your problem; also select the "
"\"Component\" and \"Versions\" to which the bug relates."
#: bugs.rst:67
msgid "The submission form has two fields, \"Title\" and \"Comment\"."
msgstr ""
"Le formulaire de soumission a un certain nombre de champs. Pour le champ "
 Titre », saisissez une *très* courte description du problème ; moins de "
"dix mots est approprié. Dans le champ « Type », sélectionnez le type de "
"problème ; sélectionnez aussi « Composant » et « Versions » en rapport avec "
"le bogue."
#: bugs.rst:71
#: bugs.rst:69
msgid ""
"For the \"Title\" field, enter a *very* short description of the problem; "
"less than ten words is good."
msgstr ""
#: bugs.rst:72
msgid ""
"In the \"Comment\" field, describe the problem in detail, including what you "
"expected to happen and what did happen. Be sure to include whether any "
@ -208,17 +209,18 @@ msgstr ""
"plateforme matérielle et logicielle vous utilisiez (en incluant les "
"informations de versions)."
#: bugs.rst:76
#: bugs.rst:77
#, fuzzy
msgid ""
"Each bug report will be assigned to a developer who will determine what "
"needs to be done to correct the problem. You will receive an update each "
"time action is taken on the bug."
"Each issue report will be reviewed by a developer who will determine what "
"needs to be done to correct the problem. You will receive an update each "
"time an action is taken on the issue."
msgstr ""
"Chaque bogue sera attribué à un développeur qui déterminera ce qui est "
"nécessaire d'entreprendre pour corriger le problème. Vous recevrez une "
"notification à chaque action effectuée sur le bogue."
#: bugs.rst:85
#: bugs.rst:86
msgid ""
"`How to Report Bugs Effectively <https://www.chiark.greenend.org.uk/"
"~sgtatham/bugs.html>`_"
@ -226,7 +228,7 @@ msgstr ""
"`Comment signaler des bogues de manière efficace <https://www.chiark."
"greenend.org.uk/~sgtatham/bugs.html>`_ (en anglais)"
#: bugs.rst:84
#: bugs.rst:85
msgid ""
"Article which goes into some detail about how to create a useful bug report. "
"This describes what kind of information is useful and why it is useful."
@ -235,7 +237,7 @@ msgstr ""
"bogue utile. Il décrit quel genre d'information est utile et pourquoi elle "
"est utile."
#: bugs.rst:88
#: bugs.rst:89
msgid ""
"`Bug Writing Guidelines <https://bugzilla.mozilla.org/page.cgi?id=bug-"
"writing.html>`_"
@ -243,7 +245,7 @@ msgstr ""
"`Guide pour la rédaction de rapports de bogues <https://bugzilla.mozilla.org/"
"page.cgi?id=bug-writing.html>`_"
#: bugs.rst:88
#: bugs.rst:89
msgid ""
"Information about writing a good bug report. Some of this is specific to "
"the Mozilla project, but describes general good practices."
@ -251,11 +253,11 @@ msgstr ""
"Conseils pour écrire un bon rapport de bogue. Certains sont spécifiques au "
"projet Mozilla mais présentent des bonnes pratiques générales."
#: bugs.rst:94
#: bugs.rst:95
msgid "Getting started contributing to Python yourself"
msgstr "Commencer à contribuer à Python vous-même"
#: bugs.rst:96
#: bugs.rst:97
msgid ""
"Beyond just reporting bugs that you find, you are also welcome to submit "
"patches to fix them. You can find more information on how to get started "
@ -269,3 +271,15 @@ msgstr ""
"Developer's Guide`_. Si vous avez des questions, le `core-mentorship mailing "
"list`_ est un endroit amical pour obtenir des réponses à toutes les "
"questions à propos du processus de corrections de bugs dans Python."
#~ msgid ""
#~ "The submission form has a number of fields. For the \"Title\" field, "
#~ "enter a *very* short description of the problem; less than ten words is "
#~ "good. In the \"Type\" field, select the type of your problem; also "
#~ "select the \"Component\" and \"Versions\" to which the bug relates."
#~ msgstr ""
#~ "Le formulaire de soumission a un certain nombre de champs. Pour le champ "
#~ "« Titre », saisissez une *très* courte description du problème ; moins de "
#~ "dix mots est approprié. Dans le champ « Type », sélectionnez le type de "
#~ "problème ; sélectionnez aussi « Composant » et « Versions » en rapport "
#~ "avec le bogue."

View File

@ -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: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2018-10-20 21:16+0200\n"
"Last-Translator: Julien Palard <julien@palard.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -20,8 +20,9 @@ msgid "Allocating Objects on the Heap"
msgstr "Allouer des objets dans le tas"
#: c-api/allocation.rst:17
#, fuzzy
msgid ""
"Initialize a newly-allocated object *op* with its type and initial "
"Initialize a newly allocated object *op* with its type and initial "
"reference. Returns the initialized object. If *type* indicates that the "
"object participates in the cyclic garbage detector, it is added to the "
"detector's set of observed objects. Other fields of the object are not "

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-05-21 16:37+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2021-12-11 11:44+0100\n"
"Last-Translator: Julien Palard <julien@palard.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -324,7 +324,7 @@ msgstr "``S`` (:class:`bytes`) [``PyBytesObject *``]"
msgid ""
"Requires that the Python object is a :class:`bytes` object, without "
"attempting any conversion. Raises :exc:`TypeError` if the object is not a "
"bytes object. The C variable may also be declared as :c:type:`PyObject*`."
"bytes object. The C variable may also be declared as :c:expr:`PyObject*`."
msgstr ""
"Nécessite que l'objet Python soit de type :class:`bytes`, sans avoir tenté "
"de conversion. :exc:`TypeError` est levée si l'objet n'est pas un objet de "
@ -340,7 +340,7 @@ msgstr "``Y`` (:class:`bytearray`) [``PyByteArrayObject *``]"
msgid ""
"Requires that the Python object is a :class:`bytearray` object, without "
"attempting any conversion. Raises :exc:`TypeError` if the object is not a :"
"class:`bytearray` object. The C variable may also be declared as :c:type:"
"class:`bytearray` object. The C variable may also be declared as :c:expr:"
"`PyObject*`."
msgstr ""
"Nécessite que l'objet Python soit de type :class:`bytes`, sans avoir tenté "
@ -426,7 +426,7 @@ msgstr "``U`` (:class:`str`) [``PyObject *``]"
msgid ""
"Requires that the Python object is a Unicode object, without attempting any "
"conversion. Raises :exc:`TypeError` if the object is not a Unicode object. "
"The C variable may also be declared as :c:type:`PyObject*`."
"The C variable may also be declared as :c:expr:`PyObject*`."
msgstr ""
"Nécessite que l'objet Python soit de type :class:`bytes`, sans avoir tenté "
"de conversion. :exc:`TypeError` est levée si l'objet n'est pas un objet de "
@ -458,10 +458,10 @@ msgstr ""
#: c-api/arg.rst:196
msgid ""
"This format requires two arguments. The first is only used as input, and "
"must be a :c:type:`const char*` which points to the name of an encoding as a "
"must be a :c:expr:`const char*` which points to the name of an encoding as a "
"NUL-terminated string, or ``NULL``, in which case ``'utf-8'`` encoding is "
"used. An exception is raised if the named encoding is not known to Python. "
"The second argument must be a :c:type:`char**`; the value of the pointer it "
"The second argument must be a :c:expr:`char**`; the value of the pointer it "
"references will be set to a buffer with the contents of the argument text. "
"The text will be encoded in the encoding specified by the first argument."
msgstr ""
@ -506,10 +506,10 @@ msgstr ""
#: c-api/arg.rst:219
msgid ""
"It requires three arguments. The first is only used as input, and must be "
"a :c:type:`const char*` which points to the name of an encoding as a NUL-"
"a :c:expr:`const char*` which points to the name of an encoding as a NUL-"
"terminated string, or ``NULL``, in which case ``'utf-8'`` encoding is used. "
"An exception is raised if the named encoding is not known to Python. The "
"second argument must be a :c:type:`char**`; the value of the pointer it "
"second argument must be a :c:expr:`char**`; the value of the pointer it "
"references will be set to a buffer with the contents of the argument text. "
"The text will be encoded in the encoding specified by the first argument. "
"The third argument must be a pointer to an integer; the referenced integer "
@ -571,9 +571,10 @@ msgid "``b`` (:class:`int`) [unsigned char]"
msgstr "``b`` (:class:`int`) [``unsigned char``]"
#: c-api/arg.rst:254
#, fuzzy
msgid ""
"Convert a nonnegative Python integer to an unsigned tiny int, stored in a C :"
"c:type:`unsigned char`."
"c:expr:`unsigned char`."
msgstr ""
"Convertit un entier Python positif ou nul en un ``unsigned tiny int``, "
"stocké dans un :c:type:`unsigned char` C."
@ -583,9 +584,10 @@ msgid "``B`` (:class:`int`) [unsigned char]"
msgstr "``B`` (:class:`int`) [``unsigned char``]"
#: c-api/arg.rst:258
#, fuzzy
msgid ""
"Convert a Python integer to a tiny int without overflow checking, stored in "
"a C :c:type:`unsigned char`."
"a C :c:expr:`unsigned char`."
msgstr ""
"Convertit un entier Python en un ``tiny int`` sans vérifier le débordement, "
"stocké dans un :c:type:`unsigned char` C."
@ -595,7 +597,8 @@ msgid "``h`` (:class:`int`) [short int]"
msgstr "``h`` (:class:`int`) [``short int``]"
#: c-api/arg.rst:262
msgid "Convert a Python integer to a C :c:type:`short int`."
#, fuzzy
msgid "Convert a Python integer to a C :c:expr:`short int`."
msgstr "Convertit un entier Python en un :c:type:`short int` C."
#: c-api/arg.rst:602
@ -603,8 +606,9 @@ msgid "``H`` (:class:`int`) [unsigned short int]"
msgstr "``H`` (:class:`int`) [``unsigned short int``]"
#: c-api/arg.rst:265
#, fuzzy
msgid ""
"Convert a Python integer to a C :c:type:`unsigned short int`, without "
"Convert a Python integer to a C :c:expr:`unsigned short int`, without "
"overflow checking."
msgstr ""
"Convertit un entier Python en un :c:type:`unsigned short int` C, sans "
@ -615,7 +619,8 @@ msgid "``i`` (:class:`int`) [int]"
msgstr "``i`` (:class:`int`) [``int``]"
#: c-api/arg.rst:269
msgid "Convert a Python integer to a plain C :c:type:`int`."
#, fuzzy
msgid "Convert a Python integer to a plain C :c:expr:`int`."
msgstr "Convertit un entier Python en un :c:type:`int` C."
#: c-api/arg.rst:605
@ -623,8 +628,9 @@ msgid "``I`` (:class:`int`) [unsigned int]"
msgstr "``I`` (:class:`int`) [``unsigned int``]"
#: c-api/arg.rst:272
#, fuzzy
msgid ""
"Convert a Python integer to a C :c:type:`unsigned int`, without overflow "
"Convert a Python integer to a C :c:expr:`unsigned int`, without overflow "
"checking."
msgstr ""
"Convertit un entier Python en un :c:type:`unsigned int` C, sans contrôle de "
@ -635,7 +641,8 @@ msgid "``l`` (:class:`int`) [long int]"
msgstr "``l`` (:class:`int`) [``long int``]"
#: c-api/arg.rst:276
msgid "Convert a Python integer to a C :c:type:`long int`."
#, fuzzy
msgid "Convert a Python integer to a C :c:expr:`long int`."
msgstr "Convertit un entier Python en un :c:type:`long int`."
#: c-api/arg.rst:608
@ -643,8 +650,9 @@ msgid "``k`` (:class:`int`) [unsigned long]"
msgstr "``k`` (:class:`int`) [``unsigned long``]"
#: c-api/arg.rst:279
#, fuzzy
msgid ""
"Convert a Python integer to a C :c:type:`unsigned long` without overflow "
"Convert a Python integer to a C :c:expr:`unsigned long` without overflow "
"checking."
msgstr ""
"Convertit un entier Python en un :c:type:`unsigned long` C sans en vérifier "
@ -656,7 +664,7 @@ msgstr "``L`` (:class:`int`) [``long long``]"
#: c-api/arg.rst:283
#, fuzzy
msgid "Convert a Python integer to a C :c:type:`long long`."
msgid "Convert a Python integer to a C :c:expr:`long long`."
msgstr "Convertit un entier Python en un :c:type:`long int`."
#: c-api/arg.rst:614
@ -666,7 +674,7 @@ msgstr "``K`` (:class:`int`) [``unsigned long long``]"
#: c-api/arg.rst:286
#, fuzzy
msgid ""
"Convert a Python integer to a C :c:type:`unsigned long long` without "
"Convert a Python integer to a C :c:expr:`unsigned long long` without "
"overflow checking."
msgstr ""
"Convertit un entier Python en un :c:type:`unsigned long` C sans en vérifier "
@ -686,9 +694,10 @@ msgid "``c`` (:class:`bytes` or :class:`bytearray` of length 1) [char]"
msgstr "``c`` (:class:`bytes` ou :class:`bytearray` de longueur 1) [``char``]"
#: c-api/arg.rst:293
#, fuzzy
msgid ""
"Convert a Python byte, represented as a :class:`bytes` or :class:`bytearray` "
"object of length 1, to a C :c:type:`char`."
"object of length 1, to a C :c:expr:`char`."
msgstr ""
"Convertit un *byte* Python, représenté comme un objet :class:`bytes` ou :"
"class:`bytearray` de longueur 1, en un :c:type:`char` C."
@ -702,9 +711,10 @@ msgid "``C`` (:class:`str` of length 1) [int]"
msgstr "``C`` (:class:`str` de longueur 1) [``int``]"
#: c-api/arg.rst:300
#, fuzzy
msgid ""
"Convert a Python character, represented as a :class:`str` object of length "
"1, to a C :c:type:`int`."
"1, to a C :c:expr:`int`."
msgstr ""
"Convertit un caractère Python, représenté comme un objet :class:`str` de "
"longueur 1, en un :c:type:`int` C."
@ -714,7 +724,8 @@ msgid "``f`` (:class:`float`) [float]"
msgstr "``f`` (:class:`float`) [``float``]"
#: c-api/arg.rst:304
msgid "Convert a Python floating point number to a C :c:type:`float`."
#, fuzzy
msgid "Convert a Python floating point number to a C :c:expr:`float`."
msgstr "Convertit un nombre flottant Python vers un :c:type:`float`."
#: c-api/arg.rst:628
@ -722,7 +733,8 @@ msgid "``d`` (:class:`float`) [double]"
msgstr "``d`` (:class:`float`) [``double``]"
#: c-api/arg.rst:307
msgid "Convert a Python floating point number to a C :c:type:`double`."
#, fuzzy
msgid "Convert a Python floating point number to a C :c:expr:`double`."
msgstr "Convertit un nombre flottant Python vers un :c:type:`double` C."
#: c-api/arg.rst:310
@ -763,7 +775,7 @@ msgstr "``O!`` (objet) [*typeobject*, ``PyObject *``]"
msgid ""
"Store a Python object in a C object pointer. This is similar to ``O``, but "
"takes two C arguments: the first is the address of a Python type object, the "
"second is the address of the C variable (of type :c:type:`PyObject*`) into "
"second is the address of the C variable (of type :c:expr:`PyObject*`) into "
"which the object pointer is stored. If the Python object does not have the "
"required type, :exc:`TypeError` is raised."
msgstr ""
@ -776,18 +788,18 @@ msgstr "``O&`` (objet) [*converter*, *anything*]"
msgid ""
"Convert a Python object to a C variable through a *converter* function. "
"This takes two arguments: the first is a function, the second is the address "
"of a C variable (of arbitrary type), converted to :c:type:`void *`. The "
"of a C variable (of arbitrary type), converted to :c:expr:`void *`. The "
"*converter* function in turn is called as follows::"
msgstr ""
#: c-api/arg.rst:337
msgid ""
"where *object* is the Python object to be converted and *address* is the :c:"
"type:`void*` argument that was passed to the :c:func:`PyArg_Parse\\*` "
"function. The returned *status* should be ``1`` for a successful conversion "
"and ``0`` if the conversion has failed. When the conversion fails, the "
"*converter* function should raise an exception and leave the content of "
"*address* unmodified."
"expr:`void*` argument that was passed to the ``PyArg_Parse*`` function. The "
"returned *status* should be ``1`` for a successful conversion and ``0`` if "
"the conversion has failed. When the conversion fails, the *converter* "
"function should raise an exception and leave the content of *address* "
"unmodified."
msgstr ""
#: c-api/arg.rst:343
@ -927,12 +939,11 @@ msgstr ""
#: c-api/arg.rst:410
msgid ""
"For the conversion to succeed, the *arg* object must match the format and "
"the format must be exhausted. On success, the :c:func:`PyArg_Parse\\*` "
"functions return true, otherwise they return false and raise an appropriate "
"exception. When the :c:func:`PyArg_Parse\\*` functions fail due to "
"conversion failure in one of the format units, the variables at the "
"addresses corresponding to that and the following format units are left "
"untouched."
"the format must be exhausted. On success, the ``PyArg_Parse*`` functions "
"return true, otherwise they return false and raise an appropriate exception. "
"When the ``PyArg_Parse*`` functions fail due to conversion failure in one of "
"the format units, the variables at the addresses corresponding to that and "
"the following format units are left untouched."
msgstr ""
#: c-api/arg.rst:419
@ -1000,7 +1011,7 @@ msgid ""
"should be passed as *args*; it must actually be a tuple. The length of the "
"tuple must be at least *min* and no more than *max*; *min* and *max* may be "
"equal. Additional arguments must be passed to the function, each of which "
"should be a pointer to a :c:type:`PyObject*` variable; these will be filled "
"should be a pointer to a :c:expr:`PyObject*` variable; these will be filled "
"in with the values from *args*; they will contain :term:`borrowed references "
"<borrowed reference>`. The variables which correspond to optional parameters "
"not given by *args* will not be filled in; these should be initialized by "
@ -1027,10 +1038,10 @@ msgstr "Construction des valeurs"
#: c-api/arg.rst:520
msgid ""
"Create a new value based on a format string similar to those accepted by "
"the :c:func:`PyArg_Parse\\*` family of functions and a sequence of values. "
"Returns the value or ``NULL`` in the case of an error; an exception will be "
"raised if ``NULL`` is returned."
"Create a new value based on a format string similar to those accepted by the "
"``PyArg_Parse*`` family of functions and a sequence of values. Returns the "
"value or ``NULL`` in the case of an error; an exception will be raised if "
"``NULL`` is returned."
msgstr ""
#: c-api/arg.rst:525
@ -1132,7 +1143,7 @@ msgstr "``u`` (:class:`str`) [``const wchar_t *``]"
#: c-api/arg.rst:571
msgid ""
"Convert a null-terminated :c:type:`wchar_t` buffer of Unicode (UTF-16 or "
"Convert a null-terminated :c:expr:`wchar_t` buffer of Unicode (UTF-16 or "
"UCS-4) data to a Python Unicode object. If the Unicode buffer pointer is "
"``NULL``, ``None`` is returned."
msgstr ""
@ -1161,7 +1172,7 @@ msgstr "``U#`` (:class:`str` ou ``None``) [``const char *``, ``int``]"
#: c-api/arg.rst:587
#, fuzzy
msgid "Convert a plain C :c:type:`int` to a Python integer object."
msgid "Convert a plain C :c:expr:`int` to a Python integer object."
msgstr "Convertit un :c:type:`long int` en un *int* Python."
#: c-api/arg.rst:590
@ -1169,42 +1180,49 @@ msgid "``b`` (:class:`int`) [char]"
msgstr "``b`` (:class:`int`) [``char``]"
#: c-api/arg.rst:590
msgid "Convert a plain C :c:type:`char` to a Python integer object."
msgstr ""
#, fuzzy
msgid "Convert a plain C :c:expr:`char` to a Python integer object."
msgstr "Convertit un :c:type:`long int` en un *int* Python."
#: c-api/arg.rst:593
msgid "Convert a plain C :c:type:`short int` to a Python integer object."
msgstr ""
#, fuzzy
msgid "Convert a plain C :c:expr:`short int` to a Python integer object."
msgstr "Convertit un :c:type:`long int` en un *int* Python."
#: c-api/arg.rst:596
msgid "Convert a C :c:type:`long int` to a Python integer object."
#, fuzzy
msgid "Convert a C :c:expr:`long int` to a Python integer object."
msgstr "Convertit un :c:type:`long int` en un *int* Python."
#: c-api/arg.rst:599
msgid "Convert a C :c:type:`unsigned char` to a Python integer object."
msgstr ""
#, fuzzy
msgid "Convert a C :c:expr:`unsigned char` to a Python integer object."
msgstr "Convertit un :c:type:`long int` en un *int* Python."
#: c-api/arg.rst:602
msgid "Convert a C :c:type:`unsigned short int` to a Python integer object."
msgstr ""
#, fuzzy
msgid "Convert a C :c:expr:`unsigned short int` to a Python integer object."
msgstr "Convertit un :c:type:`long int` en un *int* Python."
#: c-api/arg.rst:605
#, fuzzy
msgid "Convert a C :c:type:`unsigned int` to a Python integer object."
msgid "Convert a C :c:expr:`unsigned int` to a Python integer object."
msgstr "Convertit un :c:type:`long int` en un *int* Python."
#: c-api/arg.rst:608
msgid "Convert a C :c:type:`unsigned long` to a Python integer object."
msgstr ""
#, fuzzy
msgid "Convert a C :c:expr:`unsigned long` to a Python integer object."
msgstr "Convertit un :c:type:`long int` en un *int* Python."
#: c-api/arg.rst:611
#, fuzzy
msgid "Convert a C :c:type:`long long` to a Python integer object."
msgid "Convert a C :c:expr:`long long` to a Python integer object."
msgstr "Convertit un :c:type:`long int` en un *int* Python."
#: c-api/arg.rst:614
msgid "Convert a C :c:type:`unsigned long long` to a Python integer object."
msgstr ""
#, fuzzy
msgid "Convert a C :c:expr:`unsigned long long` to a Python integer object."
msgstr "Convertit un :c:type:`long int` en un *int* Python."
#: c-api/arg.rst:617
msgid "Convert a C :c:type:`Py_ssize_t` to a Python integer."
@ -1215,24 +1233,32 @@ msgid "``c`` (:class:`bytes` of length 1) [char]"
msgstr "``c`` (:class:`bytes` de taille 1) [``char``]"
#: c-api/arg.rst:620
#, fuzzy
msgid ""
"Convert a C :c:type:`int` representing a byte to a Python :class:`bytes` "
"Convert a C :c:expr:`int` representing a byte to a Python :class:`bytes` "
"object of length 1."
msgstr ""
"Convertit un caractère Python, représenté comme un objet :class:`str` de "
"longueur 1, en un :c:type:`int` C."
#: c-api/arg.rst:624
#, fuzzy
msgid ""
"Convert a C :c:type:`int` representing a character to Python :class:`str` "
"Convert a C :c:expr:`int` representing a character to Python :class:`str` "
"object of length 1."
msgstr ""
"Convertit un caractère Python, représenté comme un objet :class:`str` de "
"longueur 1, en un :c:type:`int` C."
#: c-api/arg.rst:628
msgid "Convert a C :c:type:`double` to a Python floating point number."
msgstr ""
#, fuzzy
msgid "Convert a C :c:expr:`double` to a Python floating point number."
msgstr "Convertit un :c:type:`long int` en un *int* Python."
#: c-api/arg.rst:631
msgid "Convert a C :c:type:`float` to a Python floating point number."
msgstr ""
#, fuzzy
msgid "Convert a C :c:expr:`float` to a Python floating point number."
msgstr "Convertit un :c:type:`long int` en un *int* Python."
#: c-api/arg.rst:634
msgid "``D`` (:class:`complex`) [Py_complex \\*]"
@ -1274,7 +1300,7 @@ msgstr ""
#: c-api/arg.rst:653
msgid ""
"Convert *anything* to a Python object through a *converter* function. The "
"function is called with *anything* (which should be compatible with :c:type:"
"function is called with *anything* (which should be compatible with :c:expr:"
"`void*`) as its argument and should return a \"new\" Python object, or "
"``NULL`` if an error occurred."
msgstr ""

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2020-07-20 15:07+0200\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -209,12 +209,7 @@ msgid ""
"future extensions."
msgstr ""
#: c-api/call.rst:161 c-api/call.rst:259 c-api/call.rst:360 c-api/call.rst:391
#: c-api/call.rst:413
msgid "This function is not part of the :ref:`limited API <stable>`."
msgstr ""
#: c-api/call.rst:153
#: c-api/call.rst:151
msgid ""
"If *op* does not support the vectorcall protocol (either because the type "
"does not or because the specific instance does not), return *NULL*. "
@ -222,19 +217,19 @@ msgid ""
"function never raises an exception."
msgstr ""
#: c-api/call.rst:158
#: c-api/call.rst:156
msgid ""
"This is mostly useful to check whether or not *op* supports vectorcall, "
"which can be done by checking ``PyVectorcall_Function(op) != NULL``."
msgstr ""
#: c-api/call.rst:167
#: c-api/call.rst:163
msgid ""
"Call *callable*'s :c:type:`vectorcallfunc` with positional and keyword "
"arguments given in a tuple and dict, respectively."
msgstr ""
#: c-api/call.rst:170
#: c-api/call.rst:166
msgid ""
"This is a specialized function, intended to be put in the :c:member:"
"`~PyTypeObject.tp_call` slot or be used in an implementation of ``tp_call``. "
@ -242,11 +237,11 @@ msgid ""
"not fall back to ``tp_call``."
msgstr ""
#: c-api/call.rst:183
#: c-api/call.rst:177
msgid "Object Calling API"
msgstr ""
#: c-api/call.rst:185
#: c-api/call.rst:179
msgid ""
"Various functions are available for calling a Python object. Each converts "
"its arguments to a convention supported by the called object either "
@ -254,130 +249,130 @@ msgid ""
"pick one that best fits the format of data you have available."
msgstr ""
#: c-api/call.rst:191
#: c-api/call.rst:185
msgid ""
"The following table summarizes the available functions; please see "
"individual documentation for details."
msgstr ""
#: c-api/call.rst:195
#: c-api/call.rst:189
msgid "Function"
msgstr "Fonction"
#: c-api/call.rst:195
#: c-api/call.rst:189
msgid "callable"
msgstr ""
#: c-api/call.rst:195
#: c-api/call.rst:189
msgid "args"
msgstr ""
#: c-api/call.rst:195
#: c-api/call.rst:189
msgid "kwargs"
msgstr ""
#: c-api/call.rst:197
#: c-api/call.rst:191
msgid ":c:func:`PyObject_Call`"
msgstr ""
#: c-api/call.rst:199 c-api/call.rst:203 c-api/call.rst:209 c-api/call.rst:219
#: c-api/call.rst:193 c-api/call.rst:197 c-api/call.rst:203 c-api/call.rst:213
msgid "``PyObject *``"
msgstr ""
#: c-api/call.rst:197
#: c-api/call.rst:191
msgid "tuple"
msgstr ""
#: c-api/call.rst:219
#: c-api/call.rst:213
msgid "dict/``NULL``"
msgstr ""
#: c-api/call.rst:199
#: c-api/call.rst:193
msgid ":c:func:`PyObject_CallNoArgs`"
msgstr ""
#: c-api/call.rst:201 c-api/call.rst:205 c-api/call.rst:209 c-api/call.rst:213
#: c-api/call.rst:215
#: c-api/call.rst:195 c-api/call.rst:199 c-api/call.rst:203 c-api/call.rst:207
#: c-api/call.rst:209
msgid "---"
msgstr ""
#: c-api/call.rst:201
#: c-api/call.rst:195
msgid ":c:func:`PyObject_CallOneArg`"
msgstr ""
#: c-api/call.rst:215
#: c-api/call.rst:209
msgid "1 object"
msgstr ""
#: c-api/call.rst:203
#: c-api/call.rst:197
msgid ":c:func:`PyObject_CallObject`"
msgstr ""
#: c-api/call.rst:203
#: c-api/call.rst:197
msgid "tuple/``NULL``"
msgstr ""
#: c-api/call.rst:205
#: c-api/call.rst:199
msgid ":c:func:`PyObject_CallFunction`"
msgstr ""
#: c-api/call.rst:207
#: c-api/call.rst:201
msgid "format"
msgstr "format"
#: c-api/call.rst:207
#: c-api/call.rst:201
msgid ":c:func:`PyObject_CallMethod`"
msgstr ""
#: c-api/call.rst:207
#: c-api/call.rst:201
msgid "obj + ``char*``"
msgstr ""
#: c-api/call.rst:209
#: c-api/call.rst:203
msgid ":c:func:`PyObject_CallFunctionObjArgs`"
msgstr ""
#: c-api/call.rst:211
#: c-api/call.rst:205
msgid "variadic"
msgstr ""
#: c-api/call.rst:211
#: c-api/call.rst:205
msgid ":c:func:`PyObject_CallMethodObjArgs`"
msgstr ""
#: c-api/call.rst:213 c-api/call.rst:215
#: c-api/call.rst:207 c-api/call.rst:209
msgid "obj + name"
msgstr ""
#: c-api/call.rst:213
#: c-api/call.rst:207
msgid ":c:func:`PyObject_CallMethodNoArgs`"
msgstr ""
#: c-api/call.rst:215
#: c-api/call.rst:209
msgid ":c:func:`PyObject_CallMethodOneArg`"
msgstr ""
#: c-api/call.rst:217
#: c-api/call.rst:211
msgid ":c:func:`PyObject_Vectorcall`"
msgstr ""
#: c-api/call.rst:219 c-api/call.rst:221
#: c-api/call.rst:213 c-api/call.rst:215
msgid "vectorcall"
msgstr ""
#: c-api/call.rst:219
#: c-api/call.rst:213
msgid ":c:func:`PyObject_VectorcallDict`"
msgstr ""
#: c-api/call.rst:221
#: c-api/call.rst:215
msgid ":c:func:`PyObject_VectorcallMethod`"
msgstr ""
#: c-api/call.rst:221
#: c-api/call.rst:215
msgid "arg + name"
msgstr ""
#: c-api/call.rst:227
#: c-api/call.rst:221
msgid ""
"Call a callable Python object *callable*, with arguments given by the tuple "
"*args*, and named arguments given by the dictionary *kwargs*."
@ -386,49 +381,49 @@ msgstr ""
"le *n*-uplet *args*, et des arguments nommés donnés par le dictionnaire "
"*kwargs*."
#: c-api/call.rst:230
#: c-api/call.rst:224
msgid ""
"*args* must not be *NULL*; use an empty tuple if no arguments are needed. If "
"no named arguments are needed, *kwargs* can be *NULL*."
msgstr ""
#: c-api/call.rst:245 c-api/call.rst:269 c-api/call.rst:301 c-api/call.rst:334
#: c-api/call.rst:357 c-api/call.rst:410
#: c-api/call.rst:239 c-api/call.rst:261 c-api/call.rst:293 c-api/call.rst:326
#: c-api/call.rst:347 c-api/call.rst:394
msgid ""
"Return the result of the call on success, or raise an exception and return "
"*NULL* on failure."
msgstr ""
#: c-api/call.rst:236
#: c-api/call.rst:230
msgid ""
"This is the equivalent of the Python expression: ``callable(*args, "
"**kwargs)``."
msgstr ""
"Ceci est l'équivalent de l'expression Python : ``callable(*args, **kwargs)``."
#: c-api/call.rst:242
#: c-api/call.rst:236
msgid ""
"Call a callable Python object *callable* without any arguments. It is the "
"most efficient way to call a callable Python object without any argument."
msgstr ""
#: c-api/call.rst:253
#: c-api/call.rst:247
msgid ""
"Call a callable Python object *callable* with exactly 1 positional argument "
"*arg* and no keyword arguments."
msgstr ""
#: c-api/call.rst:266
#: c-api/call.rst:258
msgid ""
"Call a callable Python object *callable*, with arguments given by the tuple "
"*args*. If no arguments are needed, then *args* can be *NULL*."
msgstr ""
#: c-api/call.rst:284
#: c-api/call.rst:276
msgid "This is the equivalent of the Python expression: ``callable(*args)``."
msgstr "Ceci est l'équivalent de l'expression Python : ``callable(*args)``."
#: c-api/call.rst:277
#: c-api/call.rst:269
msgid ""
"Call a callable Python object *callable*, with a variable number of C "
"arguments. The C arguments are described using a :c:func:`Py_BuildValue` "
@ -436,92 +431,92 @@ msgid ""
"are provided."
msgstr ""
#: c-api/call.rst:286
#: c-api/call.rst:278
msgid ""
"Note that if you only pass :c:type:`PyObject *` args, :c:func:"
"Note that if you only pass :c:expr:`PyObject *` args, :c:func:"
"`PyObject_CallFunctionObjArgs` is a faster alternative."
msgstr ""
#: c-api/call.rst:289
#: c-api/call.rst:281
msgid "The type of *format* was changed from ``char *``."
msgstr ""
#: c-api/call.rst:295
#: c-api/call.rst:287
msgid ""
"Call the method named *name* of object *obj* with a variable number of C "
"arguments. The C arguments are described by a :c:func:`Py_BuildValue` "
"format string that should produce a tuple."
msgstr ""
#: c-api/call.rst:299
#: c-api/call.rst:291
msgid "The format can be *NULL*, indicating that no arguments are provided."
msgstr ""
#: c-api/call.rst:304
#: c-api/call.rst:296
msgid ""
"This is the equivalent of the Python expression: ``obj.name(arg1, "
"arg2, ...)``."
msgstr ""
#: c-api/call.rst:307
#: c-api/call.rst:299
msgid ""
"Note that if you only pass :c:type:`PyObject *` args, :c:func:"
"Note that if you only pass :c:expr:`PyObject *` args, :c:func:"
"`PyObject_CallMethodObjArgs` is a faster alternative."
msgstr ""
#: c-api/call.rst:310
#: c-api/call.rst:302
msgid "The types of *name* and *format* were changed from ``char *``."
msgstr ""
#: c-api/call.rst:316
#: c-api/call.rst:308
msgid ""
"Call a callable Python object *callable*, with a variable number of :c:type:"
"Call a callable Python object *callable*, with a variable number of :c:expr:"
"`PyObject *` arguments. The arguments are provided as a variable number of "
"parameters followed by *NULL*."
msgstr ""
#: c-api/call.rst:323
#: c-api/call.rst:315
msgid ""
"This is the equivalent of the Python expression: ``callable(arg1, "
"arg2, ...)``."
msgstr ""
#: c-api/call.rst:329
#: c-api/call.rst:321
msgid ""
"Call a method of the Python object *obj*, where the name of the method is "
"given as a Python string object in *name*. It is called with a variable "
"number of :c:type:`PyObject *` arguments. The arguments are provided as a "
"number of :c:expr:`PyObject *` arguments. The arguments are provided as a "
"variable number of parameters followed by *NULL*."
msgstr ""
#: c-api/call.rst:340
#: c-api/call.rst:332
msgid ""
"Call a method of the Python object *obj* without arguments, where the name "
"of the method is given as a Python string object in *name*."
msgstr ""
#: c-api/call.rst:353
#: c-api/call.rst:343
msgid ""
"Call a method of the Python object *obj* with a single positional argument "
"*arg*, where the name of the method is given as a Python string object in "
"*name*."
msgstr ""
#: c-api/call.rst:367
#: c-api/call.rst:355
msgid ""
"Call a callable Python object *callable*. The arguments are the same as for :"
"c:type:`vectorcallfunc`. If *callable* supports vectorcall_, this directly "
"calls the vectorcall function stored in *callable*."
msgstr ""
#: c-api/call.rst:381
#: c-api/call.rst:367
msgid ""
"Call *callable* with positional arguments passed exactly as in the "
"vectorcall_ protocol, but with keyword arguments passed as a dictionary "
"*kwdict*. The *args* array contains only the positional arguments."
msgstr ""
#: c-api/call.rst:385
#: c-api/call.rst:371
msgid ""
"Regardless of which protocol is used internally, a conversion of arguments "
"needs to be done. Therefore, this function should only be used if the caller "
@ -529,7 +524,7 @@ msgid ""
"tuple for the positional arguments."
msgstr ""
#: c-api/call.rst:397
#: c-api/call.rst:381
msgid ""
"Call a method using the vectorcall calling convention. The name of the "
"method is given as a Python string *name*. The object whose method is called "
@ -541,17 +536,17 @@ msgid ""
"`PyObject_Vectorcall`."
msgstr ""
#: c-api/call.rst:406
#: c-api/call.rst:390
msgid ""
"If the object has the :const:`Py_TPFLAGS_METHOD_DESCRIPTOR` feature, this "
"will call the unbound method object with the full *args* vector as arguments."
msgstr ""
#: c-api/call.rst:419
#: c-api/call.rst:401
msgid "Call Support API"
msgstr ""
#: c-api/call.rst:423
#: c-api/call.rst:405
msgid ""
"Determine if the object *o* is callable. Return ``1`` if the object is "
"callable and ``0`` otherwise. This function always succeeds."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+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"
@ -28,7 +28,7 @@ msgstr ""
#: c-api/capsule.rst:17
msgid ""
"This subtype of :c:type:`PyObject` represents an opaque value, useful for C "
"extension modules who need to pass an opaque value (as a :c:type:`void*` "
"extension modules who need to pass an opaque value (as a :c:expr:`void*` "
"pointer) through Python code to other C code. It is often used to make a C "
"function pointer defined in one module available to other modules, so the "
"regular import mechanism can be used to access C APIs defined in dynamically "

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-06-22 09:58+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2019-01-14 20:31+0100\n"
"Last-Translator: ANTOINE FOURES <afoures@student.42.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -174,13 +174,15 @@ msgstr ""
"Renvoie un nouveau :c:type:`PyComplexObject` à partir de *real* et de *imag*."
#: c-api/complex.rst:118
msgid "Return the real part of *op* as a C :c:type:`double`."
#, fuzzy
msgid "Return the real part of *op* as a C :c:expr:`double`."
msgstr ""
"Renvoie la partie réelle du nombre complexe *op* sous la forme d'un :c:type:"
"`double` en C."
#: c-api/complex.rst:123
msgid "Return the imaginary part of *op* as a C :c:type:`double`."
#, fuzzy
msgid "Return the imaginary part of *op* as a C :c:expr:`double`."
msgstr ""
"Renvoie la partie imaginaire du nombre complexe *op* sous la forme d'un :c:"
"type:`double` en C."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-09-23 16:16+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+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"
@ -51,58 +51,60 @@ msgid ""
"The wrappers ensure that ``str[size-1]`` is always ``'\\0'`` upon return. "
"They never write more than *size* bytes (including the trailing ``'\\0'``) "
"into str. Both functions require that ``str != NULL``, ``size > 0``, "
"``format != NULL`` and ``size < INT_MAX``."
"``format != NULL`` and ``size < INT_MAX``. Note that this means there is no "
"equivalent to the C99 ``n = snprintf(NULL, 0, ...)`` which would determine "
"the necessary buffer size."
msgstr ""
#: c-api/conversion.rst:33
#: c-api/conversion.rst:34
msgid ""
"The return value (*rv*) for these functions should be interpreted as follows:"
msgstr ""
#: c-api/conversion.rst:35
#: c-api/conversion.rst:36
msgid ""
"When ``0 <= rv < size``, the output conversion was successful and *rv* "
"characters were written to *str* (excluding the trailing ``'\\0'`` byte at "
"``str[rv]``)."
msgstr ""
#: c-api/conversion.rst:39
#: c-api/conversion.rst:40
msgid ""
"When ``rv >= size``, the output conversion was truncated and a buffer with "
"``rv + 1`` bytes would have been needed to succeed. ``str[size-1]`` is "
"``'\\0'`` in this case."
msgstr ""
#: c-api/conversion.rst:43
#: c-api/conversion.rst:44
msgid ""
"When ``rv < 0``, \"something bad happened.\" ``str[size-1]`` is ``'\\0'`` in "
"this case too, but the rest of *str* is undefined. The exact cause of the "
"error depends on the underlying platform."
msgstr ""
#: c-api/conversion.rst:48
#: c-api/conversion.rst:49
msgid ""
"The following functions provide locale-independent string to number "
"conversions."
msgstr ""
#: c-api/conversion.rst:52
#: c-api/conversion.rst:53
msgid ""
"Convert a string ``s`` to a :c:type:`double`, raising a Python exception on "
"Convert a string ``s`` to a :c:expr:`double`, raising a Python exception on "
"failure. The set of accepted strings corresponds to the set of strings "
"accepted by Python's :func:`float` constructor, except that ``s`` must not "
"have leading or trailing whitespace. The conversion is independent of the "
"current locale."
msgstr ""
#: c-api/conversion.rst:58
#: c-api/conversion.rst:59
msgid ""
"If ``endptr`` is ``NULL``, convert the whole string. Raise :exc:"
"`ValueError` and return ``-1.0`` if the string is not a valid representation "
"of a floating-point number."
msgstr ""
#: c-api/conversion.rst:62
#: c-api/conversion.rst:63
msgid ""
"If endptr is not ``NULL``, convert as much of the string as possible and set "
"``*endptr`` to point to the first unconverted character. If no initial "
@ -111,7 +113,7 @@ msgid ""
"ValueError, and return ``-1.0``."
msgstr ""
#: c-api/conversion.rst:69
#: c-api/conversion.rst:70
msgid ""
"If ``s`` represents a value that is too large to store in a float (for "
"example, ``\"1e500\"`` is such a string on many platforms) then if "
@ -122,50 +124,50 @@ msgid ""
"the first character after the converted value."
msgstr ""
#: c-api/conversion.rst:77
#: c-api/conversion.rst:78
msgid ""
"If any other error occurs during the conversion (for example an out-of-"
"memory error), set the appropriate Python exception and return ``-1.0``."
msgstr ""
#: c-api/conversion.rst:86
#: c-api/conversion.rst:87
msgid ""
"Convert a :c:type:`double` *val* to a string using supplied *format_code*, "
"Convert a :c:expr:`double` *val* to a string using supplied *format_code*, "
"*precision*, and *flags*."
msgstr ""
#: c-api/conversion.rst:89
#: c-api/conversion.rst:90
msgid ""
"*format_code* must be one of ``'e'``, ``'E'``, ``'f'``, ``'F'``, ``'g'``, "
"``'G'`` or ``'r'``. For ``'r'``, the supplied *precision* must be 0 and is "
"ignored. The ``'r'`` format code specifies the standard :func:`repr` format."
msgstr ""
#: c-api/conversion.rst:94
#: c-api/conversion.rst:95
msgid ""
"*flags* can be zero or more of the values ``Py_DTSF_SIGN``, "
"``Py_DTSF_ADD_DOT_0``, or ``Py_DTSF_ALT``, or-ed together:"
msgstr ""
#: c-api/conversion.rst:97
#: c-api/conversion.rst:98
msgid ""
"``Py_DTSF_SIGN`` means to always precede the returned string with a sign "
"character, even if *val* is non-negative."
msgstr ""
#: c-api/conversion.rst:100
#: c-api/conversion.rst:101
msgid ""
"``Py_DTSF_ADD_DOT_0`` means to ensure that the returned string will not look "
"like an integer."
msgstr ""
#: c-api/conversion.rst:103
#: c-api/conversion.rst:104
msgid ""
"``Py_DTSF_ALT`` means to apply \"alternate\" formatting rules. See the "
"documentation for the :c:func:`PyOS_snprintf` ``'#'`` specifier for details."
msgstr ""
#: c-api/conversion.rst:107
#: c-api/conversion.rst:108
msgid ""
"If *ptype* is non-``NULL``, then the value it points to will be set to one "
"of ``Py_DTST_FINITE``, ``Py_DTST_INFINITE``, or ``Py_DTST_NAN``, signifying "
@ -173,20 +175,20 @@ msgid ""
"respectively."
msgstr ""
#: c-api/conversion.rst:111
#: c-api/conversion.rst:112
msgid ""
"The return value is a pointer to *buffer* with the converted string or "
"``NULL`` if the conversion failed. The caller is responsible for freeing the "
"returned string by calling :c:func:`PyMem_Free`."
msgstr ""
#: c-api/conversion.rst:120
#: c-api/conversion.rst:121
msgid ""
"Case insensitive comparison of strings. The function works almost "
"identically to :c:func:`strcmp` except that it ignores the case."
msgstr ""
#: c-api/conversion.rst:126
#: c-api/conversion.rst:127
msgid ""
"Case insensitive comparison of strings. The function works almost "
"identically to :c:func:`strncmp` except that it ignores the case."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-09-23 16:16+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2021-12-11 11:57+0100\n"
"Last-Translator: Jules Lasne <jules.lasne@gmail.com>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -207,7 +207,7 @@ msgstr ""
"normalisé pour que le nombre de microsecondes et de secondes tombe dans la "
"plage documentée pour les objets :class:`datetime.timedelta`."
#: c-api/datetime.rst:137
#: c-api/datetime.rst:138
msgid ""
"Return a :class:`datetime.timezone` object with an unnamed fixed offset "
"represented by the *offset* argument."
@ -215,7 +215,7 @@ msgstr ""
"Renvoie un objet :class:`datetime.timezone` avec un décalage anonyme fixe "
"représenté par l'argument *offset*."
#: c-api/datetime.rst:144
#: c-api/datetime.rst:146
msgid ""
"Return a :class:`datetime.timezone` object with a fixed offset represented "
"by the *offset* argument and with tzname *name*."
@ -223,7 +223,7 @@ msgstr ""
"Renvoie un objet :class:`datetime.timezone` avec un décalage fixe représenté "
"par l'argument *offset* et avec le nom de fuseau horaire *name*."
#: c-api/datetime.rst:150
#: c-api/datetime.rst:152
#, fuzzy
msgid ""
"Macros to extract fields from date objects. The argument must be an "
@ -236,19 +236,19 @@ msgstr ""
"`PyDateTime_DateTime`). L'argument ne doit pas être *NULL*, et le type n'est "
"pas vérifié :"
#: c-api/datetime.rst:157
#: c-api/datetime.rst:159
msgid "Return the year, as a positive int."
msgstr "Renvoie l'année, sous forme d'entier positif."
#: c-api/datetime.rst:162
#: c-api/datetime.rst:164
msgid "Return the month, as an int from 1 through 12."
msgstr "Renvoie le mois, sous forme d'entier allant de 1 à 12."
#: c-api/datetime.rst:167
#: c-api/datetime.rst:169
msgid "Return the day, as an int from 1 through 31."
msgstr "Renvoie le jour, sous forme d'entier allant de 1 à 31."
#: c-api/datetime.rst:170
#: c-api/datetime.rst:172
#, fuzzy
msgid ""
"Macros to extract fields from datetime objects. The argument must be an "
@ -259,27 +259,32 @@ msgstr ""
"une instance de :c:data:`PyDateTime_DateTime` ou une sous-classe de celle-"
"ci. L'argument ne doit pas être *NULL*, et le type n'est pas vérifié :"
#: c-api/datetime.rst:205
#: c-api/datetime.rst:216
msgid "Return the hour, as an int from 0 through 23."
msgstr "Renvoie l'heure, sous forme d'entier allant de 0 à 23."
#: c-api/datetime.rst:210
#: c-api/datetime.rst:221
msgid "Return the minute, as an int from 0 through 59."
msgstr "Renvoie la minute, sous forme d'entier allant de 0 à 59."
#: c-api/datetime.rst:215
#: c-api/datetime.rst:226
msgid "Return the second, as an int from 0 through 59."
msgstr "Renvoie la seconde, sous forme d'entier allant de 0 à 59."
#: c-api/datetime.rst:220
#: c-api/datetime.rst:231
msgid "Return the microsecond, as an int from 0 through 999999."
msgstr "Renvoie la microseconde, sous forme d'entier allant de 0 à 999999."
#: c-api/datetime.rst:224
#: c-api/datetime.rst:236
#, fuzzy
msgid "Return the fold, as an int from 0 through 1."
msgstr "Renvoie le jour, sous forme d'entier allant de 1 à 31."
#: c-api/datetime.rst:243
msgid "Return the tzinfo (which may be ``None``)."
msgstr ""
#: c-api/datetime.rst:199
#: c-api/datetime.rst:210
#, fuzzy
msgid ""
"Macros to extract fields from time objects. The argument must be an "
@ -290,7 +295,7 @@ msgstr ""
"instance de :c:data:`PyDateTime_Time` ou une sous-classe de celle-ci. "
"L'argument ne doit pas être *NULL*, et le type n'est pas vérifié :"
#: c-api/datetime.rst:229
#: c-api/datetime.rst:248
#, fuzzy
msgid ""
"Macros to extract fields from time delta objects. The argument must be an "
@ -301,26 +306,26 @@ msgstr ""
"être une instance de :c:data:`PyDateTime_Delta` ou une sous-classe de celle-"
"ci. L'argument ne doit pas être *NULL*, et le type n'est pas vérifié :"
#: c-api/datetime.rst:235
#: c-api/datetime.rst:254
msgid "Return the number of days, as an int from -999999999 to 999999999."
msgstr ""
"Renvoie le nombre de jours, sous forme d'entier allant de ``-999999999`` à "
"``999999999``."
#: c-api/datetime.rst:242
#: c-api/datetime.rst:261
msgid "Return the number of seconds, as an int from 0 through 86399."
msgstr "Renvoie le nombre de secondes sous forme d'entier allant de 0 à 86399."
#: c-api/datetime.rst:249
#: c-api/datetime.rst:268
msgid "Return the number of microseconds, as an int from 0 through 999999."
msgstr ""
"Renvoie le nombre de microsecondes, sous forme d'entier allant de 0 à 999999."
#: c-api/datetime.rst:254
#: c-api/datetime.rst:273
msgid "Macros for the convenience of modules implementing the DB API:"
msgstr "Macros de confort pour les modules implémentant l'API DB :"
#: c-api/datetime.rst:258
#: c-api/datetime.rst:277
msgid ""
"Create and return a new :class:`datetime.datetime` object given an argument "
"tuple suitable for passing to :meth:`datetime.datetime.fromtimestamp()`."
@ -328,7 +333,7 @@ msgstr ""
"Crée et renvoie un nouvel objet :class:`datetime.datetime` à partir d'un n-"
"uplet qui peut être passé à :meth:`datetime.datetime.fromtimestamp()`."
#: c-api/datetime.rst:264
#: c-api/datetime.rst:283
msgid ""
"Create and return a new :class:`datetime.date` object given an argument "
"tuple suitable for passing to :meth:`datetime.date.fromtimestamp()`."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-09-23 16:16+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2018-07-03 11:36+0200\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -84,7 +84,7 @@ msgstr ""
#: c-api/dict.rst:75
msgid ""
"Insert *val* into the dictionary *p* using *key* as a key. *key* should be "
"a :c:type:`const char*`. The key object is created using "
"a :c:expr:`const char*`. The key object is created using "
"``PyUnicode_FromString(key)``. Return ``0`` on success or ``-1`` on "
"failure. This function *does not* steal a reference to *val*."
msgstr ""
@ -132,7 +132,7 @@ msgstr ""
#: c-api/dict.rst:120
msgid ""
"This is the same as :c:func:`PyDict_GetItem`, but *key* is specified as a :c:"
"type:`const char*`, rather than a :c:type:`PyObject*`."
"expr:`const char*`, rather than a :c:expr:`PyObject*`."
msgstr ""
#: c-api/dict.rst:123
@ -180,7 +180,7 @@ msgid ""
"`Py_ssize_t` referred to by *ppos* must be initialized to ``0`` prior to the "
"first call to this function to start the iteration; the function returns "
"true for each pair in the dictionary, and false once all pairs have been "
"reported. The parameters *pkey* and *pvalue* should either point to :c:type:"
"reported. The parameters *pkey* and *pvalue* should either point to :c:expr:"
"`PyObject*` variables that will be filled in with each key and value, "
"respectively, or may be ``NULL``. Any references returned through them are "
"borrowed. *ppos* should not be altered during iteration. Its value "

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-05-21 16:37+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2018-10-04 12:24+0200\n"
"Last-Translator: Julien Palard <julien@palard.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -28,8 +28,8 @@ msgid ""
"occurred. Most C API functions don't clear this on success, but will set it "
"to indicate the cause of the error on failure. Most C API functions also "
"return an error indicator, usually ``NULL`` if they are supposed to return a "
"pointer, or ``-1`` if they return an integer (exception: the :c:func:"
"`PyArg_\\*` functions return ``1`` for success and ``0`` for failure)."
"pointer, or ``-1`` if they return an integer (exception: the ``PyArg_*`` "
"functions return ``1`` for success and ``0`` for failure)."
msgstr ""
#: c-api/exceptions.rst:20
@ -219,12 +219,12 @@ msgstr ""
#: c-api/exceptions.rst:191
msgid ""
"This is a convenience function to raise :exc:`WindowsError`. If called with "
"*ierr* of :c:data:`0`, the error code returned by a call to :c:func:"
"`GetLastError` is used instead. It calls the Win32 function :c:func:"
"`FormatMessage` to retrieve the Windows description of error code given by "
"*ierr* or :c:func:`GetLastError`, then it constructs a tuple object whose "
"first item is the *ierr* value and whose second item is the corresponding "
"error message (gotten from :c:func:`FormatMessage`), and then calls "
"*ierr* of ``0``, the error code returned by a call to :c:func:`GetLastError` "
"is used instead. It calls the Win32 function :c:func:`FormatMessage` to "
"retrieve the Windows description of error code given by *ierr* or :c:func:"
"`GetLastError`, then it constructs a tuple object whose first item is the "
"*ierr* value and whose second item is the corresponding error message "
"(gotten from :c:func:`FormatMessage`), and then calls "
"``PyErr_SetObject(PyExc_WindowsError, object)``. This function always "
"returns ``NULL``."
msgstr ""
@ -387,10 +387,10 @@ msgstr ""
#: c-api/exceptions.rst:372
msgid ""
"Test whether the error indicator is set. If set, return the exception "
"*type* (the first argument to the last call to one of the :c:func:"
"`PyErr_Set\\*` functions or to :c:func:`PyErr_Restore`). If not set, return "
"``NULL``. You do not own a reference to the return value, so you do not "
"need to :c:func:`Py_DECREF` it."
"*type* (the first argument to the last call to one of the ``PyErr_Set*`` "
"functions or to :c:func:`PyErr_Restore`). If not set, return ``NULL``. You "
"do not own a reference to the return value, so you do not need to :c:func:"
"`Py_DECREF` it."
msgstr ""
#: c-api/exceptions.rst:378
@ -878,7 +878,7 @@ msgstr "Exceptions standards"
msgid ""
"All standard Python exceptions are available as global variables whose names "
"are ``PyExc_`` followed by the Python exception name. These have the type :"
"c:type:`PyObject*`; they are all class objects. For completeness, here are "
"c:expr:`PyObject*`; they are all class objects. For completeness, here are "
"all the variables:"
msgstr ""
@ -1389,7 +1389,7 @@ msgstr ""
msgid ""
"All standard Python warning categories are available as global variables "
"whose names are ``PyExc_`` followed by the Python exception name. These have "
"the type :c:type:`PyObject*`; they are all class objects. For completeness, "
"the type :c:expr:`PyObject*`; they are all class objects. For completeness, "
"here are all the variables:"
msgstr ""

View File

@ -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: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2021-12-11 12:00+0100\n"
"Last-Translator: \n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -23,7 +23,7 @@ msgstr "Objets fichiers"
#, fuzzy
msgid ""
"These APIs are a minimal emulation of the Python 2 C API for built-in file "
"objects, which used to rely on the buffered I/O (:c:type:`FILE*`) support "
"objects, which used to rely on the buffered I/O (:c:expr:`FILE*`) support "
"from the C standard library. In Python 3, files and streams use the new :"
"mod:`io` module, which defines several layers over the low-level unbuffered "
"I/O of the operating system. The functions described below are convenience "
@ -76,8 +76,9 @@ msgid "Ignore *name* attribute."
msgstr "ignore l'attribut *name*"
#: c-api/file.rst:41
#, fuzzy
msgid ""
"Return the file descriptor associated with *p* as an :c:type:`int`. If the "
"Return the file descriptor associated with *p* as an :c:expr:`int`. If the "
"object is an integer, its value is returned. If not, the object's :meth:"
"`~io.IOBase.fileno` method is called if it exists; the method must return an "
"integer, which is returned as the file descriptor value. Sets an exception "
@ -120,7 +121,7 @@ msgstr ""
#: c-api/file.rst:68
msgid ""
"The handler is a function of type :c:type:`PyObject *(\\*)(PyObject *path, "
"The handler is a function of type :c:expr:`PyObject *(\\*)(PyObject *path, "
"void *userData)`, where *path* is guaranteed to be :c:type:`PyUnicodeObject`."
msgstr ""

View File

@ -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: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2019-01-14 15:30+0100\n"
"Last-Translator: ANTOINE FOURES <afoures@student.42.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -72,7 +72,7 @@ msgstr ""
#: c-api/float.rst:47
#, fuzzy
msgid ""
"Return a C :c:type:`double` representation of the contents of *pyfloat*. If "
"Return a C :c:expr:`double` representation of the contents of *pyfloat*. If "
"*pyfloat* is not a Python floating point object but has a :meth:`__float__` "
"method, this method will first be called to convert *pyfloat* into a float. "
"If ``__float__()`` is not defined then it falls back to :meth:`__index__`. "
@ -91,8 +91,9 @@ msgid "Use :meth:`__index__` if available."
msgstr ""
#: c-api/float.rst:60
#, fuzzy
msgid ""
"Return a C :c:type:`double` representation of the contents of *pyfloat*, but "
"Return a C :c:expr:`double` representation of the contents of *pyfloat*, but "
"without error checking."
msgstr ""
"Renvoie une représentation du contenu d'un *pyfloat* sous la forme d'un :c:"
@ -109,16 +110,18 @@ msgstr ""
"flottante. C'est une enveloppe autour du fichier d'entête :file:`float.h`."
#: c-api/float.rst:73
#, fuzzy
msgid ""
"Return the maximum representable finite float *DBL_MAX* as C :c:type:"
"Return the maximum representable finite float *DBL_MAX* as C :c:expr:"
"`double`."
msgstr ""
"Renvoie le nombre à virgule flottante fini maximal *DBL_MAX* sous la forme "
"d'un :c:type:`double` en C."
#: c-api/float.rst:78
#, fuzzy
msgid ""
"Return the minimum normalized positive float *DBL_MIN* as C :c:type:`double`."
"Return the minimum normalized positive float *DBL_MIN* as C :c:expr:`double`."
msgstr ""
"Renvoie le nombre à virgule flottante minimal normalisé *DBL_MIN* sous la "
"forme :c:type:`double` en C."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-09-23 16:16+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+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"
@ -271,8 +271,9 @@ msgid ""
msgstr ""
#: c-api/import.rst:264
#, fuzzy
msgid ""
"This pointer is initialized to point to an array of :c:type:`struct _frozen` "
"This pointer is initialized to point to an array of :c:struct:`_frozen` "
"records, terminated by one whose members are all ``NULL`` or zero. When a "
"frozen module is imported, it is searched in this table. Third-party code "
"could play tricks with this to provide a dynamically created collection of "

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-05-21 16:37+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2018-11-29 18:22+0100\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -542,7 +542,7 @@ msgstr ""
#: c-api/init.rst:511 c-api/init.rst:644 c-api/init.rst:661
msgid ""
"Use :c:func:`Py_DecodeLocale` to decode a bytes string to get a :c:type:"
"Use :c:func:`Py_DecodeLocale` to decode a bytes string to get a :c:expr:"
"`wchar_*` string."
msgstr ""
@ -930,11 +930,11 @@ msgstr ""
#: c-api/init.rst:803
msgid ""
"Note that the :c:func:`PyGILState_\\*` functions assume there is only one "
"global interpreter (created automatically by :c:func:`Py_Initialize`). "
"Python supports the creation of additional interpreters (using :c:func:"
"`Py_NewInterpreter`), but mixing multiple interpreters and the :c:func:"
"`PyGILState_\\*` API is unsupported."
"Note that the ``PyGILState_*`` functions assume there is only one global "
"interpreter (created automatically by :c:func:`Py_Initialize`). Python "
"supports the creation of additional interpreters (using :c:func:"
"`Py_NewInterpreter`), but mixing multiple interpreters and the "
"``PyGILState_*`` API is unsupported."
msgstr ""
#: c-api/init.rst:813
@ -1010,7 +1010,7 @@ msgstr ""
#: c-api/init.rst:869
msgid ""
"This data structure represents the state of a single thread. The only "
"public data member is :attr:`interp` (:c:type:`PyInterpreterState *`), which "
"public data member is :attr:`interp` (:c:expr:`PyInterpreterState *`), which "
"points to this thread's interpreter state."
msgstr ""
@ -1380,7 +1380,7 @@ msgstr ""
#: c-api/init.rst:1223
msgid ""
"The type of the *id* parameter changed from :c:type:`long` to :c:type:"
"The type of the *id* parameter changed from :c:expr:`long` to :c:expr:"
"`unsigned long`."
msgstr ""
@ -1574,10 +1574,10 @@ msgstr ""
#: c-api/init.rst:1411
msgid ""
"Also note that combining this functionality with :c:func:`PyGILState_\\*` "
"APIs is delicate, because these APIs assume a bijection between Python "
"thread states and OS-level threads, an assumption broken by the presence of "
"sub-interpreters. It is highly recommended that you don't switch sub-"
"Also note that combining this functionality with ``PyGILState_*`` APIs is "
"delicate, because these APIs assume a bijection between Python thread states "
"and OS-level threads, an assumption broken by the presence of sub-"
"interpreters. It is highly recommended that you don't switch sub-"
"interpreters between a pair of matching :c:func:`PyGILState_Ensure` and :c:"
"func:`PyGILState_Release` calls. Furthermore, extensions (such as :mod:"
"`ctypes`) using these APIs to allow calling of Python code from non-Python "
@ -1881,7 +1881,7 @@ msgid ""
"(TLS) which wraps the underlying native TLS implementation to support the "
"Python-level thread local storage API (:class:`threading.local`). The "
"CPython C level APIs are similar to those offered by pthreads and Windows: "
"use a thread key and functions to associate a :c:type:`void*` value per "
"use a thread key and functions to associate a :c:expr:`void*` value per "
"thread."
msgstr ""
@ -1900,8 +1900,8 @@ msgstr ""
#: c-api/init.rst:1669
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. If "
"the :c:type:`void*` values happen to be :c:type:`PyObject*`, these functions "
"expr:`void*` values. You need to allocate and deallocate them yourself. If "
"the :c:expr:`void*` values happen to be :c:expr:`PyObject*`, these functions "
"don't do refcount operations on them either."
msgstr ""
@ -1913,7 +1913,7 @@ msgstr ""
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."
"instead of :c:expr:`int` to represent thread keys."
msgstr ""
#: c-api/init.rst:1685
@ -1961,7 +1961,7 @@ msgstr ""
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`."
"have been unassigned. This is a no-op if the *key* argument is ``NULL``."
msgstr ""
#: c-api/init.rst:1728
@ -2007,14 +2007,14 @@ msgstr ""
#: c-api/init.rst:1767
msgid ""
"Return a zero value to indicate successfully associating a :c:type:`void*` "
"Return a zero value to indicate successfully associating a :c:expr:`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."
"mapping of the key to a :c:expr:`void*` value."
msgstr ""
#: c-api/init.rst:1774
msgid ""
"Return the :c:type:`void*` value associated with a TSS key in the current "
"Return the :c:expr:`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 ""

File diff suppressed because it is too large Load Diff

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-05-21 16:37+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+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"
@ -272,13 +272,13 @@ msgstr ""
#: c-api/intro.rst:231
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 data "
"value of type :c:expr:`PyObject*`. This type is a pointer to an opaque data "
"type representing an arbitrary Python object. Since all Python object types "
"are treated the same way by the Python language in most situations (e.g., "
"assignments, scope rules, and argument passing), it is only fitting that "
"they should be represented by a single C type. Almost all Python objects "
"live on the heap: you never declare an automatic or static variable of type :"
"c:type:`PyObject`, only pointer variables of type :c:type:`PyObject*` can "
"c:type:`PyObject`, only pointer variables of type :c:expr:`PyObject*` can "
"be declared. The sole exception are the type objects; since these must "
"never be deallocated, they are typically static :c:type:`PyTypeObject` "
"objects."
@ -491,8 +491,8 @@ msgstr ""
#: c-api/intro.rst:497
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:"
"`double` and :c:type:`char*`. A few structure types are used to describe "
"API; most are simple C types such as :c:expr:`int`, :c:expr:`long`, :c:expr:"
"`double` and :c:expr:`char*`. A few structure types are used to describe "
"static tables used to list the functions exported by a module or the data "
"attributes of a new object type, and another is used to describe the value "
"of a complex number. These will be discussed together with the functions "
@ -705,7 +705,7 @@ msgid ""
"`Misc/SpecialBuilds.txt` in the Python source distribution. Builds are "
"available that support tracing of reference counts, debugging the memory "
"allocator, or low-level profiling of the main interpreter loop. Only the "
"most frequently-used builds will be described in the remainder of this "
"most frequently used builds will be described in the remainder of this "
"section."
msgstr ""

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+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"
@ -78,7 +78,7 @@ msgstr ""
#: c-api/long.rst:50
msgid ""
"Return a new :c:type:`PyLongObject` object from a C :c:type:`unsigned long`, "
"Return a new :c:type:`PyLongObject` object from a C :c:expr:`unsigned long`, "
"or ``NULL`` on failure."
msgstr ""
@ -96,13 +96,13 @@ msgstr ""
#: c-api/long.rst:68
msgid ""
"Return a new :c:type:`PyLongObject` object from a C :c:type:`long long`, or "
"Return a new :c:type:`PyLongObject` object from a C :c:expr:`long long`, or "
"``NULL`` on failure."
msgstr ""
#: c-api/long.rst:74
msgid ""
"Return a new :c:type:`PyLongObject` object from a C :c:type:`unsigned long "
"Return a new :c:type:`PyLongObject` object from a C :c:expr:`unsigned long "
"long`, or ``NULL`` on failure."
msgstr ""
@ -139,7 +139,7 @@ msgstr ""
#: c-api/long.rst:136
msgid ""
"Return a C :c:type:`long` representation of *obj*. If *obj* is not an "
"Return a C :c:expr:`long` representation of *obj*. If *obj* is not an "
"instance of :c:type:`PyLongObject`, first call its :meth:`__index__` method "
"(if present) to convert it to a :c:type:`PyLongObject`."
msgstr ""
@ -147,7 +147,7 @@ msgstr ""
#: c-api/long.rst:122
msgid ""
"Raise :exc:`OverflowError` if the value of *obj* is out of range for a :c:"
"type:`long`."
"expr:`long`."
msgstr ""
#: c-api/long.rst:145 c-api/long.rst:186 c-api/long.rst:209
@ -172,7 +172,7 @@ msgstr ""
#: c-api/long.rst:177
msgid ""
"Return a C :c:type:`long long` representation of *obj*. If *obj* is not an "
"Return a C :c:expr:`long long` representation of *obj*. If *obj* is not an "
"instance of :c:type:`PyLongObject`, first call its :meth:`__index__` method "
"(if present) to convert it to a :c:type:`PyLongObject`."
msgstr ""
@ -180,7 +180,7 @@ msgstr ""
#: c-api/long.rst:163
msgid ""
"Raise :exc:`OverflowError` if the value of *obj* is out of range for a :c:"
"type:`long long`."
"expr:`long long`."
msgstr ""
#: c-api/long.rst:181
@ -205,14 +205,14 @@ msgstr ""
#: c-api/long.rst:218
msgid ""
"Return a C :c:type:`unsigned long` representation of *pylong*. *pylong* "
"Return a C :c:expr:`unsigned long` representation of *pylong*. *pylong* "
"must be an instance of :c:type:`PyLongObject`."
msgstr ""
#: c-api/long.rst:221
msgid ""
"Raise :exc:`OverflowError` if the value of *pylong* is out of range for a :c:"
"type:`unsigned long`."
"expr:`unsigned long`."
msgstr ""
#: c-api/long.rst:224
@ -241,14 +241,14 @@ msgstr ""
#: c-api/long.rst:249
msgid ""
"Return a C :c:type:`unsigned long long` representation of *pylong*. "
"Return a C :c:expr:`unsigned long long` representation of *pylong*. "
"*pylong* must be an instance of :c:type:`PyLongObject`."
msgstr ""
#: c-api/long.rst:252
msgid ""
"Raise :exc:`OverflowError` if the value of *pylong* is out of range for an :"
"c:type:`unsigned long long`."
"c:expr:`unsigned long long`."
msgstr ""
#: c-api/long.rst:255
@ -264,14 +264,14 @@ msgstr ""
#: c-api/long.rst:264
msgid ""
"Return a C :c:type:`unsigned long` representation of *obj*. If *obj* is not "
"Return a C :c:expr:`unsigned long` representation of *obj*. If *obj* is not "
"an instance of :c:type:`PyLongObject`, first call its :meth:`__index__` "
"method (if present) to convert it to a :c:type:`PyLongObject`."
msgstr ""
#: c-api/long.rst:268
msgid ""
"If the value of *obj* is out of range for an :c:type:`unsigned long`, return "
"If the value of *obj* is out of range for an :c:expr:`unsigned long`, return "
"the reduction of that value modulo ``ULONG_MAX + 1``."
msgstr ""
@ -283,14 +283,14 @@ msgstr ""
#: c-api/long.rst:283
msgid ""
"Return a C :c:type:`unsigned long long` representation of *obj*. If *obj* "
"Return a C :c:expr:`unsigned long long` representation of *obj*. If *obj* "
"is not an instance of :c:type:`PyLongObject`, first call its :meth:"
"`__index__` method (if present) to convert it to a :c:type:`PyLongObject`."
msgstr ""
#: c-api/long.rst:288
msgid ""
"If the value of *obj* is out of range for an :c:type:`unsigned long long`, "
"If the value of *obj* is out of range for an :c:expr:`unsigned long long`, "
"return the reduction of that value modulo ``ULLONG_MAX + 1``."
msgstr ""
@ -302,14 +302,14 @@ msgstr ""
#: c-api/long.rst:303
msgid ""
"Return a C :c:type:`double` representation of *pylong*. *pylong* must be an "
"Return a C :c:expr:`double` representation of *pylong*. *pylong* must be an "
"instance of :c:type:`PyLongObject`."
msgstr ""
#: c-api/long.rst:306
msgid ""
"Raise :exc:`OverflowError` if the value of *pylong* is out of range for a :c:"
"type:`double`."
"expr:`double`."
msgstr ""
#: c-api/long.rst:309
@ -319,9 +319,9 @@ msgstr ""
#: c-api/long.rst:314
msgid ""
"Convert a Python integer *pylong* to a C :c:type:`void` pointer. If *pylong* "
"Convert a Python integer *pylong* to a C :c:expr:`void` pointer. If *pylong* "
"cannot be converted, an :exc:`OverflowError` will be raised. This is only "
"assured to produce a usable :c:type:`void` pointer for values created with :"
"assured to produce a usable :c:expr:`void` pointer for values created with :"
"c:func:`PyLong_FromVoidPtr`."
msgstr ""

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+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"
@ -41,9 +41,9 @@ msgstr ""
#: c-api/marshal.rst:24
msgid ""
"Marshal a :c:type:`long` integer, *value*, to *file*. This will only write "
"Marshal a :c:expr:`long` integer, *value*, to *file*. This will only write "
"the least-significant 32 bits of *value*; regardless of the size of the "
"native :c:type:`long` type. *version* indicates the file format."
"native :c:expr:`long` type. *version* indicates the file format."
msgstr ""
#: c-api/marshal.rst:31
@ -64,9 +64,9 @@ msgstr ""
#: c-api/marshal.rst:46
msgid ""
"Return a C :c:type:`long` from the data stream in a :c:type:`FILE*` opened "
"Return a C :c:expr:`long` from the data stream in a :c:expr:`FILE*` opened "
"for reading. Only a 32-bit value can be read in using this function, "
"regardless of the native size of :c:type:`long`."
"regardless of the native size of :c:expr:`long`."
msgstr ""
#: c-api/marshal.rst:60
@ -77,14 +77,14 @@ msgstr ""
#: c-api/marshal.rst:56
msgid ""
"Return a C :c:type:`short` from the data stream in a :c:type:`FILE*` opened "
"Return a C :c:expr:`short` from the data stream in a :c:expr:`FILE*` opened "
"for reading. Only a 16-bit value can be read in using this function, "
"regardless of the native size of :c:type:`short`."
"regardless of the native size of :c:expr:`short`."
msgstr ""
#: c-api/marshal.rst:66
msgid ""
"Return a Python object from the data stream in a :c:type:`FILE*` opened for "
"Return a Python object from the data stream in a :c:expr:`FILE*` opened for "
"reading."
msgstr ""
@ -96,7 +96,7 @@ msgstr ""
#: c-api/marshal.rst:75
msgid ""
"Return a Python object from the data stream in a :c:type:`FILE*` opened for "
"Return a Python object from the data stream in a :c:expr:`FILE*` opened for "
"reading. Unlike :c:func:`PyMarshal_ReadObjectFromFile`, this function "
"assumes that no further objects will be read from the file, allowing it to "
"aggressively load file data into memory so that the de-serialization can "

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-05-21 16:37+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+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"
@ -82,7 +82,7 @@ msgid ""
"extended with new object types written in C. Another reason for using the "
"Python heap is the desire to *inform* the Python memory manager about the "
"memory needs of the extension module. Even when the requested memory is used "
"exclusively for internal, highly-specific purposes, delegating all memory "
"exclusively for internal, highly specific purposes, delegating all memory "
"requests to the Python memory manager causes the interpreter to have a more "
"accurate image of its memory footprint as a whole. Consequently, under "
"certain circumstances, the Python memory manager may or may not trigger "
@ -179,7 +179,7 @@ msgstr ""
#: c-api/memory.rst:215 c-api/memory.rst:323
msgid ""
"Allocates *n* bytes and returns a pointer of type :c:type:`void*` to the "
"Allocates *n* bytes and returns a pointer of type :c:expr:`void*` to the "
"allocated memory, or ``NULL`` if the request fails."
msgstr ""
@ -193,7 +193,7 @@ msgstr ""
#: c-api/memory.rst:225 c-api/memory.rst:333
msgid ""
"Allocates *nelem* elements each whose size in bytes is *elsize* and returns "
"a pointer of type :c:type:`void*` to the allocated memory, or ``NULL`` if "
"a pointer of type :c:expr:`void*` to the allocated memory, or ``NULL`` if "
"the request fails. The memory is initialized to zeros."
msgstr ""
@ -320,14 +320,14 @@ msgstr ""
#: c-api/memory.rst:267
msgid ""
"Same as :c:func:`PyMem_Malloc`, but allocates ``(n * sizeof(TYPE))`` bytes "
"of memory. Returns a pointer cast to :c:type:`TYPE*`. The memory will not "
"of memory. Returns a pointer cast to :c:expr:`TYPE*`. The memory will not "
"have been initialized in any way."
msgstr ""
#: c-api/memory.rst:274
msgid ""
"Same as :c:func:`PyMem_Realloc`, but the memory block is resized to ``(n * "
"sizeof(TYPE))`` bytes. Returns a pointer cast to :c:type:`TYPE*`. On "
"sizeof(TYPE))`` bytes. Returns a pointer cast to :c:expr:`TYPE*`. On "
"return, *p* will be a pointer to the new memory area, or ``NULL`` in the "
"event of failure."
msgstr ""

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+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"
@ -65,9 +65,9 @@ msgstr ""
#: c-api/module.rst:67
msgid ""
"It is recommended extensions use other :c:func:`PyModule_\\*` and :c:func:"
"`PyObject_\\*` functions rather than directly manipulate a module's :attr:"
"`~object.__dict__`."
"It is recommended extensions use other ``PyModule_*`` and ``PyObject_*`` "
"functions rather than directly manipulate a module's :attr:`~object."
"__dict__`."
msgstr ""
#: c-api/module.rst:78

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-05-21 16:37+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2019-08-16 22:56+0200\n"
"Last-Translator: Julien Palard <julien@palard.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -423,7 +423,7 @@ msgid ""
"``NULL``. This is equivalent to the Python expression ``type(o)``. This "
"function increments the reference count of the return value. There's really "
"no reason to use this function instead of the :c:func:`Py_TYPE()` function, "
"which returns a pointer of type :c:type:`PyTypeObject*`, except when the "
"which returns a pointer of type :c:expr:`PyTypeObject*`, except when the "
"incremented reference count is needed."
msgstr ""

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+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"
@ -45,7 +45,7 @@ msgid ""
"In a normal \"release\" build, it contains only the object's reference count "
"and a pointer to the corresponding type object. Nothing is actually declared "
"to be a :c:type:`PyObject`, but every pointer to a Python object can be cast "
"to a :c:type:`PyObject*`. Access to the members must be done by using the "
"to a :c:expr:`PyObject*`. Access to the members must be done by using the "
"macros :c:macro:`Py_REFCNT` and :c:macro:`Py_TYPE`."
msgstr ""
@ -111,7 +111,7 @@ msgid "Return a :term:`borrowed reference`."
msgstr ""
#: c-api/structures.rst:102
msgid "The :c:func:`Py_SET_TYPE` function must be used to set an object type."
msgid "Use the :c:func:`Py_SET_TYPE` function to set an object type."
msgstr ""
#: c-api/structures.rst:107
@ -143,7 +143,7 @@ msgid "Get the size of the Python object *o*."
msgstr ""
#: c-api/structures.rst:140
msgid "The :c:func:`Py_SET_SIZE` function must be used to set an object size."
msgid "Use the :c:func:`Py_SET_SIZE` function to set an object size."
msgstr ""
#: c-api/structures.rst:145
@ -170,7 +170,7 @@ msgstr ""
#: c-api/structures.rst:174
msgid ""
"Type of the functions used to implement most Python callables in C. "
"Functions of this type take two :c:type:`PyObject*` parameters and return "
"Functions of this type take two :c:expr:`PyObject*` parameters and return "
"one such value. If the return value is ``NULL``, an exception shall have "
"been set. If not ``NULL``, the return value is interpreted as the return "
"value of the function as exposed in Python. The function must return a new "
@ -212,15 +212,15 @@ msgid ""
"has four fields:"
msgstr ""
#: c-api/structures.rst:397 c-api/structures.rst:493
#: c-api/structures.rst:395 c-api/structures.rst:491
msgid "Field"
msgstr "Champ"
#: c-api/structures.rst:397 c-api/structures.rst:493
#: c-api/structures.rst:395 c-api/structures.rst:491
msgid "C Type"
msgstr "Type C"
#: c-api/structures.rst:397 c-api/structures.rst:493
#: c-api/structures.rst:395 c-api/structures.rst:491
msgid "Meaning"
msgstr "Signification"
@ -228,8 +228,8 @@ msgstr "Signification"
msgid ":attr:`ml_name`"
msgstr ":attr:`ml_name`"
#: c-api/structures.rst:249 c-api/structures.rst:412 c-api/structures.rst:495
#: c-api/structures.rst:503
#: c-api/structures.rst:249 c-api/structures.rst:410 c-api/structures.rst:493
#: c-api/structures.rst:501
msgid "const char \\*"
msgstr ""
@ -253,7 +253,7 @@ msgstr ""
msgid ":attr:`ml_flags`"
msgstr ":attr:`ml_flags`"
#: c-api/structures.rst:401 c-api/structures.rst:424
#: c-api/structures.rst:399 c-api/structures.rst:422
msgid "int"
msgstr "*int*"
@ -265,17 +265,17 @@ msgstr ""
msgid ":attr:`ml_doc`"
msgstr ":attr:`ml_doc`"
#: c-api/structures.rst:412
#: c-api/structures.rst:410
msgid "points to the contents of the docstring"
msgstr ""
#: c-api/structures.rst:253
msgid ""
"The :attr:`ml_meth` is a C function pointer. The functions may be of "
"different types, but they always return :c:type:`PyObject*`. If the "
"different types, but they always return :c:expr:`PyObject*`. If the "
"function is not of the :c:type:`PyCFunction`, the compiler will require a "
"cast in the method table. Even though :c:type:`PyCFunction` defines the "
"first parameter as :c:type:`PyObject*`, it is common that the method "
"first parameter as :c:expr:`PyObject*`, it is common that the method "
"implementation uses the specific C type of the *self* object."
msgstr ""
@ -293,7 +293,7 @@ msgstr ""
#: c-api/structures.rst:268
msgid ""
"This is the typical calling convention, where the methods have the type :c:"
"type:`PyCFunction`. The function expects two :c:type:`PyObject*` values. The "
"type:`PyCFunction`. The function expects two :c:expr:`PyObject*` values. The "
"first one is the *self* object for methods; for module functions, it is the "
"module object. The second parameter (often called *args*) is a tuple object "
"representing all arguments. This parameter is typically processed using :c:"
@ -313,7 +313,7 @@ msgstr ""
msgid ""
"Fast calling convention supporting only positional arguments. The methods "
"have the type :c:type:`_PyCFunctionFast`. The first parameter is *self*, the "
"second parameter is a C array of :c:type:`PyObject*` values indicating the "
"second parameter is a C array of :c:expr:`PyObject*` values indicating the "
"arguments and the third parameter is the number of arguments (the length of "
"the array)."
msgstr ""
@ -327,32 +327,28 @@ msgid ""
"Extension of :const:`METH_FASTCALL` supporting also keyword arguments, with "
"methods of type :c:type:`_PyCFunctionFastWithKeywords`. Keyword arguments "
"are passed the same way as in the :ref:`vectorcall protocol <vectorcall>`: "
"there is an additional fourth :c:type:`PyObject*` parameter which is a tuple "
"there is an additional fourth :c:expr:`PyObject*` parameter which is a tuple "
"representing the names of the keyword arguments (which are guaranteed to be "
"strings) or possibly ``NULL`` if there are no keywords. The values of the "
"keyword arguments are stored in the *args* array, after the positional "
"arguments."
msgstr ""
#: c-api/structures.rst:312
msgid "This is not part of the :ref:`limited API <stable>`."
msgstr ""
#: c-api/structures.rst:319
#: c-api/structures.rst:317
msgid ""
"Extension of :const:`METH_FASTCALL | METH_KEYWORDS` supporting the *defining "
"class*, that is, the class that contains the method in question. The "
"defining class might be a superclass of ``Py_TYPE(self)``."
msgstr ""
#: c-api/structures.rst:323
#: c-api/structures.rst:321
msgid ""
"The method needs to be of type :c:type:`PyCMethod`, the same as for "
"``METH_FASTCALL | METH_KEYWORDS`` with ``defining_class`` argument added "
"after ``self``."
msgstr ""
#: c-api/structures.rst:332
#: c-api/structures.rst:330
msgid ""
"Methods without parameters don't need to check whether arguments are given "
"if they are listed with the :const:`METH_NOARGS` flag. They need to be of "
@ -361,16 +357,16 @@ msgid ""
"the second parameter will be ``NULL``."
msgstr ""
#: c-api/structures.rst:341
#: c-api/structures.rst:339
msgid ""
"Methods with a single object argument can be listed with the :const:`METH_O` "
"flag, instead of invoking :c:func:`PyArg_ParseTuple` with a ``\"O\"`` "
"argument. They have the type :c:type:`PyCFunction`, with the *self* "
"parameter, and a :c:type:`PyObject*` parameter representing the single "
"parameter, and a :c:expr:`PyObject*` parameter representing the single "
"argument."
msgstr ""
#: c-api/structures.rst:347
#: c-api/structures.rst:345
msgid ""
"These two constants are not used to indicate the calling convention but the "
"binding when use with methods of classes. These may not be used for "
@ -378,27 +374,27 @@ msgid ""
"any given method."
msgstr ""
#: c-api/structures.rst:357
#: c-api/structures.rst:355
msgid ""
"The method will be passed the type object as the first parameter rather than "
"an instance of the type. This is used to create *class methods*, similar to "
"what is created when using the :func:`classmethod` built-in function."
msgstr ""
#: c-api/structures.rst:367
#: c-api/structures.rst:365
msgid ""
"The method will be passed ``NULL`` as the first parameter rather than an "
"instance of the type. This is used to create *static methods*, similar to "
"what is created when using the :func:`staticmethod` built-in function."
msgstr ""
#: c-api/structures.rst:371
#: c-api/structures.rst:369
msgid ""
"One other constant controls whether a method is loaded in place of another "
"definition with the same method name."
msgstr ""
#: c-api/structures.rst:377
#: c-api/structures.rst:375
msgid ""
"The method will be loaded in place of existing definitions. Without "
"*METH_COEXIST*, the default is to skip repeated definitions. Since slot "
@ -411,193 +407,193 @@ msgid ""
"calls."
msgstr ""
#: c-api/structures.rst:389
#: c-api/structures.rst:387
msgid "Accessing attributes of extension types"
msgstr ""
#: c-api/structures.rst:393
#: c-api/structures.rst:391
msgid ""
"Structure which describes an attribute of a type which corresponds to a C "
"struct member. Its fields are:"
msgstr ""
#: c-api/structures.rst:399
#: c-api/structures.rst:397
msgid ":attr:`name`"
msgstr ":attr:`name`"
#: c-api/structures.rst:399
#: c-api/structures.rst:397
msgid "name of the member"
msgstr ""
#: c-api/structures.rst:401
#: c-api/structures.rst:399
msgid ":attr:`!type`"
msgstr ":attr:`!type`"
#: c-api/structures.rst:401
#: c-api/structures.rst:399
msgid "the type of the member in the C struct"
msgstr ""
#: c-api/structures.rst:404
#: c-api/structures.rst:402
msgid ":attr:`offset`"
msgstr ":attr:`offset`"
#: c-api/structures.rst:440
#: c-api/structures.rst:438
msgid "Py_ssize_t"
msgstr ""
#: c-api/structures.rst:404
#: c-api/structures.rst:402
msgid ""
"the offset in bytes that the member is located on the type's object struct"
msgstr ""
#: c-api/structures.rst:408
#: c-api/structures.rst:406
msgid ":attr:`flags`"
msgstr ":attr:`flags`"
#: c-api/structures.rst:408
#: c-api/structures.rst:406
msgid "flag bits indicating if the field should be read-only or writable"
msgstr ""
#: c-api/structures.rst:412
#: c-api/structures.rst:410
msgid ":attr:`doc`"
msgstr ":attr:`doc`"
#: c-api/structures.rst:416
#: c-api/structures.rst:414
msgid ""
":attr:`!type` can be one of many ``T_`` macros corresponding to various C "
"types. When the member is accessed in Python, it will be converted to the "
"equivalent Python type."
msgstr ""
#: c-api/structures.rst:421
#: c-api/structures.rst:419
msgid "Macro name"
msgstr ""
#: c-api/structures.rst:421
#: c-api/structures.rst:419
msgid "C type"
msgstr "Type C"
#: c-api/structures.rst:423
#: c-api/structures.rst:421
msgid "T_SHORT"
msgstr ""
#: c-api/structures.rst:423
#: c-api/structures.rst:421
msgid "short"
msgstr ""
#: c-api/structures.rst:424
#: c-api/structures.rst:422
msgid "T_INT"
msgstr ""
#: c-api/structures.rst:425
#: c-api/structures.rst:423
msgid "T_LONG"
msgstr ""
#: c-api/structures.rst:425
#: c-api/structures.rst:423
msgid "long"
msgstr ""
#: c-api/structures.rst:426
#: c-api/structures.rst:424
msgid "T_FLOAT"
msgstr ""
#: c-api/structures.rst:426
#: c-api/structures.rst:424
msgid "float"
msgstr "*float*"
#: c-api/structures.rst:427
#: c-api/structures.rst:425
msgid "T_DOUBLE"
msgstr ""
#: c-api/structures.rst:427
#: c-api/structures.rst:425
msgid "double"
msgstr "double"
#: c-api/structures.rst:428
#: c-api/structures.rst:426
msgid "T_STRING"
msgstr ""
#: c-api/structures.rst:429
#: c-api/structures.rst:427
msgid "T_OBJECT"
msgstr ""
#: c-api/structures.rst:430
#: c-api/structures.rst:428
msgid "PyObject \\*"
msgstr "PyObject \\*"
#: c-api/structures.rst:430
#: c-api/structures.rst:428
msgid "T_OBJECT_EX"
msgstr ""
#: c-api/structures.rst:431
#: c-api/structures.rst:429
msgid "T_CHAR"
msgstr ""
#: c-api/structures.rst:432 c-api/structures.rst:437
#: c-api/structures.rst:430 c-api/structures.rst:435
msgid "char"
msgstr "char"
#: c-api/structures.rst:432
#: c-api/structures.rst:430
msgid "T_BYTE"
msgstr ""
#: c-api/structures.rst:433
#: c-api/structures.rst:431
msgid "T_UBYTE"
msgstr ""
#: c-api/structures.rst:433
#: c-api/structures.rst:431
msgid "unsigned char"
msgstr "``unsigned char``"
#: c-api/structures.rst:434
#: c-api/structures.rst:432
msgid "T_UINT"
msgstr ""
#: c-api/structures.rst:434
#: c-api/structures.rst:432
msgid "unsigned int"
msgstr "``unsigned int``"
#: c-api/structures.rst:435
#: c-api/structures.rst:433
msgid "T_USHORT"
msgstr ""
#: c-api/structures.rst:435
#: c-api/structures.rst:433
msgid "unsigned short"
msgstr "``unsigned short``"
#: c-api/structures.rst:436
#: c-api/structures.rst:434
msgid "T_ULONG"
msgstr ""
#: c-api/structures.rst:436
#: c-api/structures.rst:434
msgid "unsigned long"
msgstr "``unsigned long``"
#: c-api/structures.rst:437
#: c-api/structures.rst:435
msgid "T_BOOL"
msgstr ""
#: c-api/structures.rst:438
#: c-api/structures.rst:436
msgid "T_LONGLONG"
msgstr ""
#: c-api/structures.rst:438
#: c-api/structures.rst:436
msgid "long long"
msgstr ""
#: c-api/structures.rst:439
#: c-api/structures.rst:437
msgid "T_ULONGLONG"
msgstr ""
#: c-api/structures.rst:439
#: c-api/structures.rst:437
msgid "unsigned long long"
msgstr "``unsigned long long``"
#: c-api/structures.rst:440
#: c-api/structures.rst:438
msgid "T_PYSSIZET"
msgstr ""
#: c-api/structures.rst:443
#: c-api/structures.rst:441
msgid ""
":c:macro:`T_OBJECT` and :c:macro:`T_OBJECT_EX` differ in that :c:macro:"
"`T_OBJECT` returns ``None`` if the member is ``NULL`` and :c:macro:"
@ -607,7 +603,7 @@ msgid ""
"than :c:macro:`T_OBJECT`."
msgstr ""
#: c-api/structures.rst:450
#: c-api/structures.rst:448
msgid ""
":attr:`flags` can be ``0`` for write and read access or :c:macro:`READONLY` "
"for read-only access. Using :c:macro:`T_STRING` for :attr:`type` implies :c:"
@ -616,7 +612,7 @@ msgid ""
"are set to ``NULL``)."
msgstr ""
#: c-api/structures.rst:458
#: c-api/structures.rst:456
msgid ""
"Heap allocated types (created using :c:func:`PyType_FromSpec` or similar), "
"``PyMemberDef`` may contain definitions for the special members "
@ -627,99 +623,99 @@ msgid ""
"``T_PYSSIZET`` and ``READONLY``, for example::"
msgstr ""
#: c-api/structures.rst:475
#: c-api/structures.rst:473
msgid ""
"Get an attribute belonging to the object at address *obj_addr*. The "
"attribute is described by ``PyMemberDef`` *m*. Returns ``NULL`` on error."
msgstr ""
#: c-api/structures.rst:482
#: c-api/structures.rst:480
msgid ""
"Set an attribute belonging to the object at address *obj_addr* to object "
"*o*. The attribute to set is described by ``PyMemberDef`` *m*. Returns "
"``0`` if successful and a negative value on failure."
msgstr ""
#: c-api/structures.rst:489
#: c-api/structures.rst:487
msgid ""
"Structure to define property-like access for a type. See also description of "
"the :c:member:`PyTypeObject.tp_getset` slot."
msgstr ""
#: c-api/structures.rst:495
#: c-api/structures.rst:493
msgid "name"
msgstr ""
#: c-api/structures.rst:495
#: c-api/structures.rst:493
msgid "attribute name"
msgstr ""
#: c-api/structures.rst:497
#: c-api/structures.rst:495
msgid "get"
msgstr ""
#: c-api/structures.rst:497
#: c-api/structures.rst:495
msgid "getter"
msgstr ""
#: c-api/structures.rst:497
#: c-api/structures.rst:495
msgid "C function to get the attribute"
msgstr ""
#: c-api/structures.rst:499
#: c-api/structures.rst:497
msgid "set"
msgstr ""
#: c-api/structures.rst:499
#: c-api/structures.rst:497
msgid "setter"
msgstr ""
#: c-api/structures.rst:499
#: c-api/structures.rst:497
msgid ""
"optional C function to set or delete the attribute, if omitted the attribute "
"is readonly"
msgstr ""
#: c-api/structures.rst:503
#: c-api/structures.rst:501
msgid "doc"
msgstr ""
#: c-api/structures.rst:503
#: c-api/structures.rst:501
msgid "optional docstring"
msgstr ""
#: c-api/structures.rst:505
#: c-api/structures.rst:503
msgid "closure"
msgstr ""
#: c-api/structures.rst:505
#: c-api/structures.rst:503
msgid "void \\*"
msgstr ""
#: c-api/structures.rst:505
#: c-api/structures.rst:503
msgid ""
"optional function pointer, providing additional data for getter and setter"
msgstr ""
#: c-api/structures.rst:510
#: c-api/structures.rst:508
msgid ""
"The ``get`` function takes one :c:type:`PyObject*` parameter (the instance) "
"The ``get`` function takes one :c:expr:`PyObject*` parameter (the instance) "
"and a function pointer (the associated ``closure``)::"
msgstr ""
#: c-api/structures.rst:515
#: c-api/structures.rst:513
msgid ""
"It should return a new reference on success or ``NULL`` with a set exception "
"on failure."
msgstr ""
#: c-api/structures.rst:518
#: c-api/structures.rst:516
msgid ""
"``set`` functions take two :c:type:`PyObject*` parameters (the instance and "
"``set`` functions take two :c:expr:`PyObject*` parameters (the instance and "
"the value to be set) and a function pointer (the associated ``closure``)::"
msgstr ""
#: c-api/structures.rst:523
#: c-api/structures.rst:521
msgid ""
"In case the attribute should be deleted the second parameter is ``NULL``. "
"Should return ``0`` on success or ``-1`` with a set exception on failure."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-05-21 16:37+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+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"
@ -118,7 +118,7 @@ msgid ""
"Return the current signal handler for signal *i*. This is a thin wrapper "
"around either :c:func:`sigaction` or :c:func:`signal`. Do not call those "
"functions directly! :c:type:`PyOS_sighandler_t` is a typedef alias for :c:"
"type:`void (\\*)(int)`."
"expr:`void (\\*)(int)`."
msgstr ""
#: c-api/sys.rst:114
@ -126,7 +126,7 @@ msgid ""
"Set the signal handler for signal *i* to be *h*; return the old signal "
"handler. This is a thin wrapper around either :c:func:`sigaction` or :c:func:"
"`signal`. Do not call those functions directly! :c:type:"
"`PyOS_sighandler_t` is a typedef alias for :c:type:`void (\\*)(int)`."
"`PyOS_sighandler_t` is a typedef alias for :c:expr:`void (\\*)(int)`."
msgstr ""
#: c-api/sys.rst:122
@ -412,7 +412,7 @@ msgstr ""
#: c-api/sys.rst:355
msgid ""
"The hook function is of type :c:type:`int (*)(const char *event, PyObject "
"The hook function is of type :c:expr:`int (*)(const char *event, PyObject "
"*args, void *userData)`, where *args* is guaranteed to be a :c:type:"
"`PyTupleObject`. The hook function is always called with the GIL held by the "
"Python interpreter that raised the event."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+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"
@ -218,7 +218,7 @@ msgstr ""
#: c-api/tuple.rst:163
msgid ""
"Describes a field of a struct sequence. As a struct sequence is modeled as a "
"tuple, all fields are typed as :c:type:`PyObject*`. The index in the :attr:"
"tuple, all fields are typed as :c:expr:`PyObject*`. The index in the :attr:"
"`fields` array of the :c:type:`PyStructSequence_Desc` determines which field "
"of the struct sequence is described."
msgstr ""

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+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"
@ -49,7 +49,7 @@ msgstr ""
#: c-api/type.rst:42
msgid ""
"Return the :c:member:`~PyTypeObject.tp_flags` member of *type*. This "
"function is primarily meant for use with `Py_LIMITED_API`; the individual "
"function is primarily meant for use with ``Py_LIMITED_API``; the individual "
"flag bits are guaranteed to be stable across Python releases, but access to :"
"c:member:`~PyTypeObject.tp_flags` itself is not part of the limited API."
msgstr ""

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-09-23 16:16+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+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"
@ -30,8 +30,8 @@ msgid ""
"Create a :ref:`GenericAlias <types-genericalias>` object. Equivalent to "
"calling the Python class :class:`types.GenericAlias`. The *origin* and "
"*args* arguments set the ``GenericAlias``\\ 's ``__origin__`` and "
"``__args__`` attributes respectively. *origin* should be a :c:type:"
"`PyTypeObject*`, and *args* can be a :c:type:`PyTupleObject*` or any "
"``__args__`` attributes respectively. *origin* should be a :c:expr:"
"`PyTypeObject*`, and *args* can be a :c:expr:`PyTupleObject*` or any "
"``PyObject*``. If *args* passed is not a tuple, a 1-tuple is automatically "
"constructed and ``__args__`` is set to ``(args,)``. Minimal checking is done "
"for the arguments, so the function will succeed even if *origin* is not a "

File diff suppressed because it is too large Load Diff

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-05-21 16:37+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2018-10-04 12:27+0200\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -34,8 +34,8 @@ msgstr ""
#: c-api/unicode.rst:20
msgid ""
":c:type:`Py_UNICODE*` and UTF-8 representations are created on demand and "
"cached in the Unicode object. The :c:type:`Py_UNICODE*` representation is "
":c:expr:`Py_UNICODE*` and UTF-8 representations are created on demand and "
"cached in the Unicode object. The :c:expr:`Py_UNICODE*` representation is "
"deprecated and inefficient."
msgstr ""
@ -55,7 +55,7 @@ msgstr ""
#: c-api/unicode.rst:31
msgid ""
"\"legacy\" Unicode objects have been created through one of the deprecated "
"APIs (typically :c:func:`PyUnicode_FromUnicode`) and only bear the :c:type:"
"APIs (typically :c:func:`PyUnicode_FromUnicode`) and only bear the :c:expr:"
"`Py_UNICODE*` representation; you will have to call :c:func:"
"`PyUnicode_READY` on them before calling any other API."
msgstr ""
@ -86,7 +86,7 @@ msgstr ""
#: c-api/unicode.rst:61
msgid ""
"This is a typedef of :c:type:`wchar_t`, which is a 16-bit type or 32-bit "
"This is a typedef of :c:expr:`wchar_t`, which is a 16-bit type or 32-bit "
"type depending on the platform."
msgstr ""
@ -235,7 +235,7 @@ msgid ""
"The returned buffer is always terminated with an extra null code point. It "
"may also contain embedded null code points, which would cause the string to "
"be truncated when used in most C functions. The ``AS_DATA`` form casts the "
"pointer to :c:type:`const char *`. The *o* argument has to be a Unicode "
"pointer to :c:expr:`const char *`. The *o* argument has to be a Unicode "
"object (not checked)."
msgstr ""
@ -887,7 +887,7 @@ msgstr ""
#: c-api/unicode.rst:708
msgid ""
"Return a read-only pointer to the Unicode object's internal :c:type:"
"`Py_UNICODE` buffer, or ``NULL`` on error. This will create the :c:type:"
"`Py_UNICODE` buffer, or ``NULL`` on error. This will create the :c:expr:"
"`Py_UNICODE*` representation of the object if it is not yet available. The "
"buffer is always terminated with an extra null code point. Note that the "
"resulting :c:type:`Py_UNICODE` string may also contain embedded null code "
@ -919,7 +919,7 @@ msgstr ""
msgid ""
"Like :c:func:`PyUnicode_AsUnicode`, but also saves the :c:func:`Py_UNICODE` "
"array length (excluding the extra null terminator) in *size*. Note that the "
"resulting :c:type:`Py_UNICODE*` string may contain embedded null code "
"resulting :c:expr:`Py_UNICODE*` string may contain embedded null code "
"points, which would cause the string to be truncated when used in most C "
"functions."
msgstr ""
@ -1036,7 +1036,7 @@ msgid ""
"ParseTuple converter: encode :class:`str` objects -- obtained directly or "
"through the :class:`os.PathLike` interface -- to :class:`bytes` using :c:"
"func:`PyUnicode_EncodeFSDefault`; :class:`bytes` objects are output as-is. "
"*result* must be a :c:type:`PyBytesObject*` which must be released when it "
"*result* must be a :c:expr:`PyBytesObject*` which must be released when it "
"is no longer used."
msgstr ""
@ -1056,7 +1056,7 @@ msgid ""
"ParseTuple converter: decode :class:`bytes` objects -- obtained either "
"directly or indirectly through the :class:`os.PathLike` interface -- to :"
"class:`str` using :c:func:`PyUnicode_DecodeFSDefaultAndSize`; :class:`str` "
"objects are output as-is. *result* must be a :c:type:`PyUnicodeObject*` "
"objects are output as-is. *result* must be a :c:expr:`PyUnicodeObject*` "
"which must be released when it is no longer used."
msgstr ""
@ -1113,26 +1113,26 @@ msgid "wchar_t Support"
msgstr ""
#: c-api/unicode.rst:942
msgid ":c:type:`wchar_t` support for platforms which support it:"
msgid ":c:expr:`wchar_t` support for platforms which support it:"
msgstr ""
#: c-api/unicode.rst:946
msgid ""
"Create a Unicode object from the :c:type:`wchar_t` buffer *w* of the given "
"Create a Unicode object from the :c:expr:`wchar_t` buffer *w* of the given "
"*size*. Passing ``-1`` as the *size* indicates that the function must itself "
"compute the length, using wcslen. Return ``NULL`` on failure."
msgstr ""
#: c-api/unicode.rst:954
msgid ""
"Copy the Unicode object contents into the :c:type:`wchar_t` buffer *w*. At "
"most *size* :c:type:`wchar_t` characters are copied (excluding a possibly "
"trailing null termination character). Return the number of :c:type:"
"Copy the Unicode object contents into the :c:expr:`wchar_t` buffer *w*. At "
"most *size* :c:expr:`wchar_t` characters are copied (excluding a possibly "
"trailing null termination character). Return the number of :c:expr:"
"`wchar_t` characters copied or ``-1`` in case of an error. Note that the "
"resulting :c:type:`wchar_t*` string may or may not be null-terminated. It "
"is the responsibility of the caller to make sure that the :c:type:`wchar_t*` "
"resulting :c:expr:`wchar_t*` string may or may not be null-terminated. It "
"is the responsibility of the caller to make sure that the :c:expr:`wchar_t*` "
"string is null-terminated in case this is required by the application. Also, "
"note that the :c:type:`wchar_t*` string might contain null characters, which "
"note that the :c:expr:`wchar_t*` string might contain null characters, which "
"would cause the string to be truncated when used with most C functions."
msgstr ""
@ -1141,9 +1141,9 @@ msgid ""
"Convert the Unicode object to a wide character string. The output string "
"always ends with a null character. If *size* is not ``NULL``, write the "
"number of wide characters (excluding the trailing null termination "
"character) into *\\*size*. Note that the resulting :c:type:`wchar_t` string "
"character) into *\\*size*. Note that the resulting :c:expr:`wchar_t` string "
"might contain null characters, which would cause the string to be truncated "
"when used with most C functions. If *size* is ``NULL`` and the :c:type:"
"when used with most C functions. If *size* is ``NULL`` and the :c:expr:"
"`wchar_t*` string contains null characters a :exc:`ValueError` is raised."
msgstr ""
@ -1157,7 +1157,7 @@ msgstr ""
#: c-api/unicode.rst:982
msgid ""
"Raises a :exc:`ValueError` if *size* is ``NULL`` and the :c:type:`wchar_t*` "
"Raises a :exc:`ValueError` if *size* is ``NULL`` and the :c:expr:`wchar_t*` "
"string contains null characters."
msgstr ""

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-03-18 17:06+0100\n"
"POT-Creation-Date: 2022-10-18 15:46+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"
@ -35,12 +35,12 @@ msgstr ""
#: c-api/veryhigh.rst:19
msgid ""
"Note also that several of these functions take :c:type:`FILE*` parameters. "
"One particular issue which needs to be handled carefully is that the :c:type:"
"Note also that several of these functions take :c:expr:`FILE*` parameters. "
"One particular issue which needs to be handled carefully is that the :c:expr:"
"`FILE` structure for different C libraries can be different and "
"incompatible. Under Windows (at least), it is possible for dynamically "
"linked extensions to actually use different libraries, so care should be "
"taken that :c:type:`FILE*` parameters are only passed to these functions if "
"taken that :c:expr:`FILE*` parameters are only passed to these functions if "
"it is certain that they were created by the same library that the Python "
"runtime is using."
msgstr ""
@ -101,7 +101,7 @@ msgstr ""
#: c-api/veryhigh.rst:84
msgid ""
"This is a simplified interface to :c:func:`PyRun_SimpleStringFlags` below, "
"leaving the :c:type:`PyCompilerFlags`\\* argument set to ``NULL``."
"leaving the :c:struct:`PyCompilerFlags`\\* argument set to ``NULL``."
msgstr ""
#: c-api/veryhigh.rst:90

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-09-23 16:16+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2021-12-16 17:25+0100\n"
"Last-Translator: Andy Kwok <andy.kwok.work@gmail.com>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -58,7 +58,7 @@ msgid ""
"a callable object that receives notification when *ob* is garbage collected; "
"it should accept a single parameter, which will be the weak reference object "
"itself. *callback* may also be ``None`` or ``NULL``. If *ob* is not a "
"weakly-referencable object, or if *callback* is not callable, ``None``, or "
"weakly referencable object, or if *callback* is not callable, ``None``, or "
"``NULL``, this will return ``NULL`` and raise :exc:`TypeError`."
msgstr ""
"Retourne un objet de référence faible pour l'objet *ob*. Elle renvoie "
@ -81,7 +81,7 @@ msgid ""
"can be a callable object that receives notification when *ob* is garbage "
"collected; it should accept a single parameter, which will be the weak "
"reference object itself. *callback* may also be ``None`` or ``NULL``. If "
"*ob* is not a weakly-referencable object, or if *callback* is not callable, "
"*ob* is not a weakly referencable object, or if *callback* is not callable, "
"``None``, or ``NULL``, this will return ``NULL`` and raise :exc:`TypeError`."
msgstr ""
"Retourne un objet mandataire à référence faible pour l'objet *ob*. Ceci "

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2022-10-18 12:23+0200\n"
"Last-Translator: Jules Lasne <jules.lasne@gmail.com>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -2253,8 +2253,9 @@ msgstr ""
"environ``."
#: distutils/apiref.rst:1201
#, fuzzy
msgid ""
"Note that this is not a fully-fledged string interpolation function. A valid "
"Note that this is not a full-fledged string interpolation function. A valid "
"``$variable`` can consist only of upper and lower case letters, numbers and "
"an underscore. No { } or ( ) style quoting is available."
msgstr ""

View File

@ -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: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2021-12-11 12:46+0100\n"
"Last-Translator: Julien Palard <julien@palard.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -44,8 +44,9 @@ msgid "The initialization function has the signature:"
msgstr "La fonction d'initialisation doit avoir le prototype :"
#: extending/building.rst:20
#, fuzzy
msgid ""
"It returns either a fully-initialized module, or a :c:type:`PyModuleDef` "
"It returns either a fully initialized module, or a :c:type:`PyModuleDef` "
"instance. See :ref:`initializing-modules` for details."
msgstr ""
"Elle doit donner soit un module entièrement initialisé, soit une instance "

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-03-18 17:06+0100\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2021-12-11 12:50+0100\n"
"Last-Translator: Julien Palard <julien@palard.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -311,14 +311,13 @@ msgstr ""
msgid ""
"When a function *f* that calls another function *g* detects that the latter "
"fails, *f* should itself return an error value (usually ``NULL`` or "
"``-1``). It should *not* call one of the :c:func:`PyErr_\\*` functions --- "
"one has already been called by *g*. *f*'s caller is then supposed to also "
"return an error indication to *its* caller, again *without* calling :c:func:"
"`PyErr_\\*`, and so on --- the most detailed cause of the error was already "
"reported by the function that first detected it. Once the error reaches the "
"Python interpreter's main loop, this aborts the currently executing Python "
"code and tries to find an exception handler specified by the Python "
"programmer."
"``-1``). It should *not* call one of the ``PyErr_*`` functions --- one has "
"already been called by *g*. *f*'s caller is then supposed to also return an "
"error indication to *its* caller, again *without* calling ``PyErr_*``, and "
"so on --- the most detailed cause of the error was already reported by the "
"function that first detected it. Once the error reaches the Python "
"interpreter's main loop, this aborts the currently executing Python code and "
"tries to find an exception handler specified by the Python programmer."
msgstr ""
"Lorsqu'une fonction *f* ayant appelé une autre fonction *g* détecte que "
"cette dernière a échoué, *f* devrait donner une valeur d'erreur à son tour "
@ -333,12 +332,13 @@ msgstr ""
"d'exception spécifié par le développeur Python."
#: extending/extending.rst:168
#, fuzzy
msgid ""
"(There are situations where a module can actually give a more detailed error "
"message by calling another :c:func:`PyErr_\\*` function, and in such cases "
"it is fine to do so. As a general rule, however, this is not necessary, and "
"can cause information about the cause of the error to be lost: most "
"operations can fail for a variety of reasons.)"
"message by calling another ``PyErr_*`` function, and in such cases it is "
"fine to do so. As a general rule, however, this is not necessary, and can "
"cause information about the cause of the error to be lost: most operations "
"can fail for a variety of reasons.)"
msgstr ""
"(Il y a des situations où un module peut effectivement donner un message "
"d'erreur plus détaillé en appelant une autre fonction :c:func:`PyErr_\\*`, "
@ -543,9 +543,10 @@ msgstr ""
"objets dans le tas en Python !)"
#: extending/extending.rst:300
#, fuzzy
msgid ""
"If you have a C function that returns no useful argument (a function "
"returning :c:type:`void`), the corresponding Python function must return "
"returning :c:expr:`void`), the corresponding Python function must return "
"``None``. You need this idiom to do so (which is implemented by the :c:"
"macro:`Py_RETURN_NONE` macro)::"
msgstr ""
@ -1615,7 +1616,7 @@ msgstr ""
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 "
"data type which stores a pointer (:c:type:`void \\*`). Capsules can only be "
"data type which stores a pointer (:c:expr:`void \\*`). Capsules can only be "
"created and accessed via their C API, but they can be passed around like any "
"other Python object. In particular, they can be assigned to a name in an "
"extension module's namespace. Other extension modules can then import this "
@ -1644,7 +1645,7 @@ msgstr ""
#, fuzzy
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 "
"The function :c:func:`PyCapsule_New` takes a name parameter (:c:expr:`const "
"char \\*`); you're permitted to pass in a ``NULL`` name, but we strongly "
"encourage you to specify a name. Properly named Capsules provide a degree "
"of runtime type-safety; there is no feasible way to tell one unnamed Capsule "
@ -1679,11 +1680,12 @@ msgstr ""
"chargent contient l'API C correcte."
#: extending/extending.rst:1203
#, fuzzy
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 "
"used library modules. It stores all C API pointers (just one in the "
"example!) in an array of :c:type:`void` pointers which becomes the value of "
"example!) in an array of :c:expr:`void` pointers which becomes the value of "
"a Capsule. The header file corresponding to the module provides a macro that "
"takes care of importing the module and retrieving its C API pointers; client "
"modules only have to call this macro before accessing the C API."

View File

@ -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: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2018-07-04 11:38+0200\n"
"Last-Translator: Julien Palard <julien@palard.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -67,10 +67,11 @@ msgid "Recommended third party tools"
msgstr "Les outils tiers recommandés"
#: extending/index.rst:28
#, fuzzy
msgid ""
"This guide only covers the basic tools for creating extensions provided as "
"part of this version of CPython. Third party tools like `Cython <http://"
"cython.org/>`_, `cffi <https://cffi.readthedocs.io>`_, `SWIG <http://www."
"part of this version of CPython. Third party tools like `Cython <https://"
"cython.org/>`_, `cffi <https://cffi.readthedocs.io>`_, `SWIG <https://www."
"swig.org>`_ and `Numba <https://numba.pydata.org/>`_ offer both simpler and "
"more sophisticated approaches to creating C and C++ extensions for Python."
msgstr ""

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-11-04 18:14+0100\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2021-02-07 20:03+0100\n"
"Last-Translator: \n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -161,7 +161,7 @@ msgstr ""
msgid ""
"If no :c:member:`~PyTypeObject.tp_repr` handler is specified, the "
"interpreter will supply a representation that uses the type's :c:member:"
"`~PyTypeObject.tp_name` and a uniquely-identifying value for the object."
"`~PyTypeObject.tp_name` and a uniquely identifying value for the object."
msgstr ""
#: extending/newtypes.rst:181
@ -197,16 +197,16 @@ msgstr ""
msgid ""
"Python supports two pairs of attribute handlers; a type that supports "
"attributes only needs to implement the functions for one pair. The "
"difference is that one pair takes the name of the attribute as a :c:type:"
"`char\\*`, while the other accepts a :c:type:`PyObject\\*`. Each type can "
"use whichever pair makes more sense for the implementation's convenience. ::"
"difference is that one pair takes the name of the attribute as a :c:expr:"
"`char\\*`, while the other accepts a :c:expr:`PyObject*`. Each type can use "
"whichever pair makes more sense for the implementation's convenience. ::"
msgstr ""
#: extending/newtypes.rst:220
msgid ""
"If accessing attributes of an object is always a simple operation (this will "
"be explained shortly), there are generic implementations which can be used "
"to provide the :c:type:`PyObject\\*` version of the attribute management "
"to provide the :c:expr:`PyObject*` version of the attribute management "
"functions. The actual need for type-specific attribute handlers almost "
"completely disappeared starting with Python 2.2, though there are many "
"examples which have not been updated to use some of the new generic "
@ -364,9 +364,9 @@ msgstr "Gestion des attributs de type spécifiques"
#: extending/newtypes.rst:342
msgid ""
"For simplicity, only the :c:type:`char\\*` version will be demonstrated "
"For simplicity, only the :c:expr:`char\\*` version will be demonstrated "
"here; the type of the name parameter is the only difference between the :c:"
"type:`char\\*` and :c:type:`PyObject\\*` flavors of the interface. This "
"expr:`char\\*` and :c:expr:`PyObject*` flavors of the interface. This "
"example effectively does the same thing as the generic example above, but "
"does not use the generic support added in Python 2.2. It explains how the "
"handler functions are called, so that if you do need to extend their "
@ -593,8 +593,9 @@ msgstr ""
"faire deux choses :"
#: extending/newtypes.rst:575
#, fuzzy
msgid ""
"Include a :c:type:`PyObject\\*` field in the C object structure dedicated to "
"Include a :c:expr:`PyObject*` field in the C object structure dedicated to "
"the weak reference mechanism. The object's constructor should leave it "
"``NULL`` (which is automatic when using the default :c:member:`~PyTypeObject."
"tp_alloc`)."
@ -624,7 +625,8 @@ msgstr ""
"par le champ requis ::"
#: extending/newtypes.rst:592
msgid "And the corresponding member in the statically-declared type object::"
#, fuzzy
msgid "And the corresponding member in the statically declared type object::"
msgstr ""
"Et le membre correspondant dans l'objet de type déclaré statiquement ::"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2022-10-18 12:22+0200\n"
"Last-Translator: Julien Palard <julien@palard.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -37,9 +37,10 @@ msgid "The Basics"
msgstr "Les bases"
#: extending/newtypes_tutorial.rst:26
#, fuzzy
msgid ""
"The :term:`CPython` runtime sees all Python objects as variables of type :c:"
"type:`PyObject\\*`, which serves as a \"base type\" for all Python objects. "
"expr:`PyObject*`, which serves as a \"base type\" for all Python objects. "
"The :c:type:`PyObject` structure itself only contains the object's :term:"
"`reference count` and a pointer to the object's \"type object\". This is "
"where the action is; the type object determines which (C) functions get "

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-03-18 17:06+0100\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2021-11-06 13:18+0100\n"
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -315,8 +315,9 @@ msgid "Starting in Python 3.8, you can!"
msgstr "Depuis Python 3.8, c'est possible !"
#: faq/design.rst:158
#, fuzzy
msgid ""
"Assignment expressions using the walrus operator `:=` assign a variable in "
"Assignment expressions using the walrus operator ``:=`` assign a variable in "
"an expression::"
msgstr ""
"Les expressions d'affectation qui utilisent l'opérateur morse `:=` affectent "
@ -374,7 +375,7 @@ msgstr ""
"``key()``, ou quand un objet qui n'est pas un fichier implémente une méthode "
"``write()``."
#: faq/design.rst:207
#: faq/design.rst:189
msgid "https://mail.python.org/pipermail/python-3000/2006-November/004643.html"
msgstr ""
"https://mail.python.org/pipermail/python-3000/2006-November/004643.html"
@ -594,10 +595,11 @@ msgstr ""
"définir une fonction."
#: faq/design.rst:314
#, fuzzy
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 "
"locally-defined function is that you don't need to invent a name for the "
"locally defined function is that you don't need to invent a name for the "
"function -- but that's just a local variable to which the function object "
"(which is exactly the same type of object that a lambda expression yields) "
"is assigned!"
@ -615,12 +617,12 @@ msgstr ""
"Python peut-il être compilé en code machine, en C ou dans un autre langage ?"
#: faq/design.rst:324
#, fuzzy
msgid ""
"`Cython <http://cython.org/>`_ compiles a modified version of Python with "
"optional annotations into C extensions. `Nuitka <http://www.nuitka.net/>`_ "
"`Cython <https://cython.org/>`_ compiles a modified version of Python with "
"optional annotations into C extensions. `Nuitka <https://www.nuitka.net/>`_ "
"is an up-and-coming compiler of Python into C++ code, aiming to support the "
"full Python language. For compiling to Java you can consider `VOC <https://"
"voc.readthedocs.io>`_."
"full Python language."
msgstr ""
"`Cython <http://cython.org/>`_ compile une version modifiée de Python avec "
"des annotations optionnelles en extensions C. `Nuitka <http://www.nuitka.net/"
@ -628,11 +630,11 @@ msgstr ""
"langage Python entièrement. Pour compiler en Java, vous pouvez regarder `VOC "
"<https://voc.readthedocs.io>`_."
#: faq/design.rst:332
#: faq/design.rst:331
msgid "How does Python manage memory?"
msgstr "Comment Python gère la mémoire ?"
#: faq/design.rst:334
#: faq/design.rst:333
msgid ""
"The details of Python memory management depend on the implementation. The "
"standard implementation of Python, :term:`CPython`, uses reference counting "
@ -651,11 +653,12 @@ msgstr ""
"module :mod:`gc` fournit des fonctions pour lancer le ramasse-miettes, "
"d'obtenir des statistiques de débogage et ajuster ses paramètres."
#: faq/design.rst:342
#: faq/design.rst:341
#, fuzzy
msgid ""
"Other implementations (such as `Jython <http://www.jython.org>`_ or `PyPy "
"<http://www.pypy.org>`_), however, can rely on a different mechanism such as "
"a full-blown garbage collector. This difference can cause some subtle "
"Other implementations (such as `Jython <https://www.jython.org>`_ or `PyPy "
"<https://www.pypy.org>`_), however, can rely on a different mechanism such "
"as a full-blown garbage collector. This difference can cause some subtle "
"porting problems if your Python code depends on the behavior of the "
"reference counting implementation."
msgstr ""
@ -665,7 +668,7 @@ msgstr ""
"de subtils problèmes de portabilité si votre code Python dépend du "
"comportement de l'implémentation du compteur de références."
#: faq/design.rst:348
#: faq/design.rst:347
msgid ""
"In some Python implementations, the following code (which is fine in "
"CPython) will probably run out of file descriptors::"
@ -674,7 +677,7 @@ msgstr ""
"parfaitement avec *CPython*) aurait probablement manqué de descripteurs de "
"fichiers ::"
#: faq/design.rst:355
#: faq/design.rst:354
msgid ""
"Indeed, using CPython's reference counting and destructor scheme, each new "
"assignment to *f* closes the previous file. With a traditional GC, however, "
@ -686,7 +689,7 @@ msgstr ""
"Cependant, avec un ramasse-miettes classique, ces objets sont collectés (et "
"fermés) à intervalles irréguliers, et potentiellement longs."
#: faq/design.rst:360
#: faq/design.rst:359
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 "
@ -697,13 +700,13 @@ msgstr ""
"utiliser l'instruction :keyword:`with` ; ceci fonctionne indépendamment du "
"système de gestion de la mémoire ::"
#: faq/design.rst:370
#: faq/design.rst:369
msgid "Why doesn't CPython use a more traditional garbage collection scheme?"
msgstr ""
"Pourquoi CPython n'utilise-t-il pas un modèle de ramasse-miettes plus "
"traditionnel ?"
#: faq/design.rst:372
#: faq/design.rst:371
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 "
@ -718,7 +721,7 @@ msgstr ""
"transparente, elle ne l'est pas complètement ; des correctifs sont "
"nécessaires afin que Python fonctionne correctement avec.)"
#: faq/design.rst:378
#: faq/design.rst:377
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 "
@ -736,12 +739,12 @@ msgstr ""
"de Python. À l'heure actuelle, CPython fonctionne avec n'importe quelle "
"implémentation correcte de ``malloc()`` et ``free()``."
#: faq/design.rst:387
#: faq/design.rst:386
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 ?"
#: faq/design.rst:389
#: faq/design.rst:388
msgid ""
"Objects referenced from the global namespaces of Python modules are not "
"always deallocated when Python exits. This may happen if there are circular "
@ -758,7 +761,7 @@ msgstr ""
"cependant, agressif sur le nettoyage de la mémoire en quittant et cherche à "
"détruire chaque objet."
#: faq/design.rst:396
#: faq/design.rst:395
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."
@ -767,12 +770,12 @@ msgstr ""
"utilisez le module :mod:`atexit` pour exécuter une fonction qui va forcer "
"ces destructions."
#: faq/design.rst:401
#: faq/design.rst:400
msgid "Why are there separate tuple and list data types?"
msgstr ""
"Pourquoi les *n*-uplets et les *list* sont deux types de données séparés ?"
#: faq/design.rst:403
#: faq/design.rst:402
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 "
@ -789,7 +792,7 @@ msgstr ""
"des coordonnées cartésiennes sont correctement représentées par un *n*-uplet "
"de deux ou trois nombres."
#: faq/design.rst:410
#: faq/design.rst:409
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 "
@ -806,7 +809,7 @@ msgstr ""
"problème que vous ajoutiez un ou deux fichiers supplémentaires dans le "
"dossier."
#: faq/design.rst:417
#: faq/design.rst:416
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 "
@ -821,11 +824,11 @@ msgstr ""
"utilisés comme clés de dictionnaires, et donc de ``tuple`` et ``list`` seul "
"des *n*-uplets peuvent être utilisés comme clés."
#: faq/design.rst:424
#: faq/design.rst:423
msgid "How are lists implemented in CPython?"
msgstr "Comment les listes sont-elles implémentées dans CPython ?"
#: faq/design.rst:426
#: faq/design.rst:425
msgid ""
"CPython's lists are really variable-length arrays, not Lisp-style linked "
"lists. The implementation uses a contiguous array of references to other "
@ -838,7 +841,7 @@ msgstr ""
"Elle conserve également un pointeur vers ce tableau et la longueur du "
"tableau dans une structure de tête de liste."
#: faq/design.rst:430
#: faq/design.rst:429
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."
@ -846,7 +849,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."
#: faq/design.rst:433
#: faq/design.rst:432
msgid ""
"When items are appended or inserted, the array of references is resized. "
"Some cleverness is applied to improve the performance of appending items "
@ -859,11 +862,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."
#: faq/design.rst:440
#: faq/design.rst:439
msgid "How are dictionaries implemented in CPython?"
msgstr "Comment les dictionnaires sont-ils implémentés dans CPython ?"
#: faq/design.rst:442
#: faq/design.rst:441
msgid ""
"CPython's dictionaries are implemented as resizable hash tables. Compared "
"to B-trees, this gives better performance for lookup (the most common "
@ -875,7 +878,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."
#: faq/design.rst:446
#: faq/design.rst:445
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 "
@ -899,11 +902,11 @@ msgstr ""
"différents, cela signifie que le temps pour récupérer une clé est constant — "
"O(1), en notation grand O de Landau."
#: faq/design.rst:457
#: faq/design.rst:456
msgid "Why must dictionary keys be immutable?"
msgstr "Pourquoi les clés du dictionnaire sont immuables ?"
#: faq/design.rst:459
#: faq/design.rst:458
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 "
@ -926,7 +929,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."
#: faq/design.rst:468
#: faq/design.rst:467
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 "
@ -938,11 +941,11 @@ msgstr ""
"uplet avec les mêmes entrées que la liste ``L``. Les *n*-uplets sont "
"immuables et peuvent donc être utilisés comme clés du dictionnaire."
#: faq/design.rst:472
#: faq/design.rst:471
msgid "Some unacceptable solutions that have been proposed:"
msgstr "Certaines solutions insatisfaisantes ont été proposées :"
#: faq/design.rst:474
#: faq/design.rst:473
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.::"
@ -951,7 +954,7 @@ msgstr ""
"parce que si vous créez une nouvelle liste avec la même valeur, elle ne sera "
"pas retrouvée ; par exemple ::"
#: faq/design.rst:480
#: faq/design.rst:479
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 "
@ -963,7 +966,7 @@ msgstr ""
"les clés de dictionnaire doivent être comparées à l'aide du comparateur "
"``==`` et non à l'aide du mot clé :keyword:`is`."
#: faq/design.rst:484
#: faq/design.rst:483
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 "
@ -974,7 +977,7 @@ msgstr ""
"une référence à elle-même ou avoir une boucle infinie au niveau du code "
"copié."
#: faq/design.rst:488
#: faq/design.rst:487
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 "
@ -987,7 +990,7 @@ msgstr ""
"accident. Cela casse également un impératif important des dictionnaires : "
"chaque valeur de ``d.keys()`` est utilisable comme clé du dictionnaire."
#: faq/design.rst:493
#: faq/design.rst:492
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 "
@ -1005,7 +1008,7 @@ msgstr ""
"encore une fois, les objets se faisant référence pourraient provoquer une "
"boucle infinie."
#: faq/design.rst:499
#: faq/design.rst:498
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 "
@ -1022,7 +1025,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). ::"
#: faq/design.rst:523
#: faq/design.rst:522
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 "
@ -1032,7 +1035,7 @@ msgstr ""
"certains membres de la liste soient impossibles à hacher et aussi par la "
"possibilité de débordement arithmétique."
#: faq/design.rst:527
#: faq/design.rst:526
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__() == "
@ -1046,7 +1049,7 @@ msgstr ""
"ne remplissez pas ces conditions, les dictionnaires et autres structures "
"basées sur le hachage se comporteront mal."
#: faq/design.rst:532
#: faq/design.rst:531
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 "
@ -1059,11 +1062,11 @@ msgstr ""
"conséquences de ne pas satisfaire entièrement ces conditions. Vous avez été "
"prévenus."
#: faq/design.rst:539
#: faq/design.rst:538
msgid "Why doesn't list.sort() return the sorted list?"
msgstr "Pourquoi ``list.sort()`` ne renvoie pas la liste triée ?"
#: faq/design.rst:541
#: faq/design.rst:540
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 "
@ -1079,7 +1082,7 @@ msgstr ""
"écrasant accidentellement une liste lorsque vous avez besoin dune copie "
"triée tout en gardant sous la main la version non triée."
#: faq/design.rst:547
#: faq/design.rst:546
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 "
@ -1091,13 +1094,13 @@ msgstr ""
"partir dun itérable fourni, la classe et la renvoie. Par exemple, voici "
"comment itérer dans lordre sur les clés dun dictionnaire ::"
#: faq/design.rst:557
#: faq/design.rst:556
msgid "How do you specify and enforce an interface spec in Python?"
msgstr ""
"Comment spécifier une interface et appliquer une spécification dinterface "
"en Python ?"
#: faq/design.rst:559
#: faq/design.rst:558
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 "
@ -1109,7 +1112,7 @@ msgstr ""
"module. Beaucoup estiment que la vérification au moment de la compilation "
"des spécifications d'interface facilite la construction de grands programmes."
#: faq/design.rst:564
#: faq/design.rst:563
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` "
@ -1126,7 +1129,7 @@ msgstr ""
"class:`~collections.abc.Iterable`, :class:`~collections.abc.Container` et :"
"class:`collections.abc.MutableMapping`."
#: faq/design.rst:571
#: faq/design.rst:570
msgid ""
"For Python, many of the advantages of interface specifications can be "
"obtained by an appropriate test discipline for components."
@ -1134,7 +1137,7 @@ msgstr ""
"Pour Python, la plupart des avantages des spécifications d'interface peuvent "
"être obtenus par une discipline de test appropriée pour les composants."
#: faq/design.rst:574
#: faq/design.rst:573
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 "
@ -1155,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."
#: faq/design.rst:582
#: faq/design.rst:581
msgid ""
"An appropriate testing discipline can help build large complex applications "
"in Python as well as having interface specifications would. In fact, it can "
@ -1175,7 +1178,7 @@ msgstr ""
"réellement le faire correctement, mais il est trivial de vérifier cette "
"propriété dans une suite de tests."
#: faq/design.rst:590
#: faq/design.rst:589
msgid ""
"Writing test suites is very helpful, and you might want to design your code "
"to make it easily tested. One increasingly popular technique, test-driven "
@ -1190,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."
#: faq/design.rst:598
#: faq/design.rst:597
msgid "Why is there no goto?"
msgstr "Pourquoi n'y a-t-il pas de ``goto`` en Python ?"
#: faq/design.rst:600
#: faq/design.rst:599
msgid ""
"In the 1970s people realized that unrestricted goto could lead to messy "
"\"spaghetti\" code that was hard to understand and revise. In a high-level "
@ -1211,7 +1214,7 @@ msgstr ""
"boucler (avec les instructions ``while`` et ``for``, qui peuvent contenir "
"des ``continue`` et ``break``)."
#: faq/design.rst:607
#: faq/design.rst:606
msgid ""
"One can also use exceptions to provide a \"structured goto\" that works even "
"across function calls. Many feel that exceptions can conveniently emulate "
@ -1224,7 +1227,7 @@ msgstr ""
"l'utilisation raisonnable des constructions *go* ou *goto* du C, du Fortran "
"ou d'autres langages de programmation. Par exemple ::"
#: faq/design.rst:623
#: faq/design.rst:622
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."
@ -1233,13 +1236,13 @@ msgstr ""
"toute façon généralement considéré comme un abus de ``goto``. À Utiliser "
"avec parcimonie."
#: faq/design.rst:628
#: faq/design.rst:627
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* ?"
#: faq/design.rst:630
#: faq/design.rst:629
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 "
@ -1249,7 +1252,7 @@ msgstr ""
"*backslashes* : le *backslash* non appairé à la fin échappe le caractère de "
"guillemet final, laissant la chaîne non terminée."
#: faq/design.rst:634
#: faq/design.rst:633
msgid ""
"Raw strings were designed to ease creating input for processors (chiefly "
"regular expression engines) that want to do their own backslash escape "
@ -1267,7 +1270,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."
#: faq/design.rst:641
#: faq/design.rst:640
msgid ""
"If you're trying to build Windows pathnames, note that all Windows system "
"calls accept forward slashes too::"
@ -1276,20 +1279,20 @@ msgstr ""
"les appels système Windows acceptent également les *slashes* "
 classiques » ::"
#: faq/design.rst:646
#: faq/design.rst:645
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-ci ::"
#: faq/design.rst:654
#: faq/design.rst:653
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 ?"
#: faq/design.rst:656
#: faq/design.rst:655
msgid ""
"Python has a 'with' statement that wraps the execution of a block, calling "
"code on the entrance and exit from the block. Some languages have a "
@ -1299,11 +1302,11 @@ msgstr ""
"appelant du code à l'entrée et la sortie du bloc. Certains langages "
"possèdent une construction qui ressemble à ceci ::"
#: faq/design.rst:664
#: faq/design.rst:663
msgid "In Python, such a construct would be ambiguous."
msgstr "En Python, une telle construction serait ambiguë."
#: faq/design.rst:666
#: faq/design.rst:665
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 "
@ -1316,7 +1319,7 @@ msgstr ""
"le compilateur connaît *toujours* la portée de toutes les variables au "
"moment de la compilation."
#: faq/design.rst:671
#: faq/design.rst:670
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 "
@ -1330,11 +1333,11 @@ msgstr ""
"impossible de savoir, d'une simple lecture, quel attribut est référencé : "
"s'il est local, global ou un attribut membre ?"
#: faq/design.rst:677
#: faq/design.rst:676
msgid "For instance, take the following incomplete snippet::"
msgstr "Prenons par exemple l'extrait incomplet suivant ::"
#: faq/design.rst:683
#: faq/design.rst:682
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 "
@ -1348,7 +1351,7 @@ msgstr ""
 x » existe, est-elle utilisée dans le bloc ``with`` ? Comme vous voyez, "
"la nature dynamique du Python rend ces choix beaucoup plus difficiles."
#: faq/design.rst:689
#: faq/design.rst:688
msgid ""
"The primary benefit of \"with\" and similar language features (reduction of "
"code volume) can, however, easily be achieved in Python by assignment. "
@ -1358,11 +1361,11 @@ msgstr ""
"similaires (réduction du volume de code) peut, cependant, être facilement "
"réalisé en Python par assignation. Au lieu de ::"
#: faq/design.rst:696
#: faq/design.rst:695
msgid "write this::"
msgstr "écrivez ceci ::"
#: faq/design.rst:703
#: faq/design.rst:702
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 "
@ -1372,12 +1375,12 @@ 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."
#: faq/design.rst:709
#: faq/design.rst:708
msgid "Why don't generators support the with statement?"
msgstr ""
"Pourquoi l'instruction ``with`` ne prend-elle pas en charge les générateurs ?"
#: faq/design.rst:711
#: faq/design.rst:710
msgid ""
"For technical reasons, a generator used directly as a context manager would "
"not work correctly. When, as is most common, a generator is used as an "
@ -1390,13 +1393,13 @@ msgstr ""
"besoin de le fermer. Sinon, on peut toujours mettre ``contextlib."
"closing(générateur)`` dans la ligne du ``with``."
#: faq/design.rst:718
#: faq/design.rst:717
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`` ?"
#: faq/design.rst:720
#: faq/design.rst:719
msgid ""
"The colon is required primarily to enhance readability (one of the results "
"of the experimental ABC language). Consider this::"
@ -1404,11 +1407,11 @@ msgstr ""
"Le deux-points est principalement nécessaire pour améliorer la lisibilité "
"(l'un des résultats du langage expérimental ABC). Considérez ceci ::"
#: faq/design.rst:726
#: faq/design.rst:725
msgid "versus ::"
msgstr "et cela ::"
#: faq/design.rst:731
#: faq/design.rst:730
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 "
@ -1418,7 +1421,7 @@ msgstr ""
"aussi comment un deux-points introduit l'exemple dans cette réponse à la "
"FAQ ; c'est un usage standard en français (et en anglais)."
#: faq/design.rst:734
#: faq/design.rst:733
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 "
@ -1430,13 +1433,13 @@ 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."
#: faq/design.rst:740
#: faq/design.rst:739
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 *n*-"
"uplets ?"
#: faq/design.rst:742
#: faq/design.rst:741
msgid ""
"Python lets you add a trailing comma at the end of lists, tuples, and "
"dictionaries::"
@ -1444,11 +1447,11 @@ msgstr ""
"Python vous permet d'ajouter une virgule à la fin des listes, des *n*-uplets "
"et des dictionnaires ::"
#: faq/design.rst:753
#: faq/design.rst:752
msgid "There are several reasons to allow this."
msgstr "Il y a plusieurs raisons d'accepter cela."
#: faq/design.rst:755
#: faq/design.rst:754
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 "
@ -1461,7 +1464,7 @@ msgstr ""
"virgule à la ligne précédente. Les lignes peuvent aussi être réorganisées "
"sans créer une erreur de syntaxe."
#: faq/design.rst:760
#: faq/design.rst:759
msgid ""
"Accidentally omitting the comma can lead to errors that are hard to "
"diagnose. For example::"
@ -1469,7 +1472,7 @@ msgstr ""
"L'omission accidentelle de la virgule peut entraîner des erreurs difficiles "
"à diagnostiquer, par exemple ::"
#: faq/design.rst:770
#: faq/design.rst:769
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 "
@ -1479,7 +1482,7 @@ msgstr ""
"trois : \"*fee*\", \"*fiefoo*\" et \"*fum*\". Toujours ajouter la virgule "
"permet d'éviter cette source d'erreur."
#: faq/design.rst:773
#: faq/design.rst:772
msgid ""
"Allowing the trailing comma may also make programmatic code generation "
"easier."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-03-18 17:06+0100\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2021-10-17 18:37+0200\n"
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -73,8 +73,9 @@ msgstr ""
"d'écrire vos propres extensions C, selon ce que vous essayez de faire."
#: faq/extending.rst:44
#, fuzzy
msgid ""
"`Cython <http://cython.org>`_ and its relative `Pyrex <https://www.cosc."
"`Cython <https://cython.org>`_ and its relative `Pyrex <https://www.cosc."
"canterbury.ac.nz/greg.ewing/python/Pyrex/>`_ are compilers that accept a "
"slightly modified form of Python and generate the corresponding C code. "
"Cython and Pyrex make it possible to write an extension without having to "
@ -87,12 +88,13 @@ msgstr ""
"à connaître l'API C de Python."
#: faq/extending.rst:50
#, fuzzy
msgid ""
"If you need to interface to some C or C++ library for which no Python "
"extension currently exists, you can try wrapping the library's data types "
"and functions with a tool such as `SWIG <http://www.swig.org>`_. `SIP "
"<https://riverbankcomputing.com/software/sip/intro>`__, `CXX <http://cxx."
"sourceforge.net/>`_ `Boost <http://www.boost.org/libs/python/doc/index."
"and functions with a tool such as `SWIG <https://www.swig.org>`_. `SIP "
"<https://riverbankcomputing.com/software/sip/intro>`__, `CXX <https://cxx."
"sourceforge.net/>`_ `Boost <https://www.boost.org/libs/python/doc/index."
"html>`_, or `Weave <https://github.com/scipy/weave>`_ are also alternatives "
"for wrapping C++ libraries."
msgstr ""
@ -492,8 +494,9 @@ msgstr ""
"class:`list`, :class:`dict`, etc."
#: faq/extending.rst:289
#, fuzzy
msgid ""
"The Boost Python Library (BPL, http://www.boost.org/libs/python/doc/index."
"The Boost Python Library (BPL, https://www.boost.org/libs/python/doc/index."
"html) provides a way of doing this from C++ (i.e. you can inherit from an "
"extension class written in C++ using the BPL)."
msgstr ""

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-09-23 16:16+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2021-12-16 02:40+0100\n"
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -283,21 +283,32 @@ msgid "How does the Python version numbering scheme work?"
msgstr "Comment fonctionne le numérotage des versions de Python ?"
#: faq/general.rst:128
msgid ""
"Python versions are numbered A.B.C or A.B. A is the major version number -- "
"it is only incremented for really major changes in the language. B is the "
"minor version number, incremented for less earth-shattering changes. C is "
"the micro-level -- it is incremented for each bugfix release. See :pep:`6` "
"for more information about bugfix releases."
msgid "Python versions are numbered \"A.B.C\" or \"A.B\":"
msgstr ""
#: faq/general.rst:130
msgid ""
"*A* is the major version number -- it is only incremented for really major "
"changes in the language."
msgstr ""
#: faq/general.rst:132
msgid ""
"*B* is the minor version number -- it is incremented for less earth-"
"shattering changes."
msgstr ""
"Les versions de Python sont numérotées A.B.C ou A.B. A est une version "
"majeure -- elle est augmentée seulement lorsqu'il y a des changements "
"conséquents dans le langage. B est une version mineure, elle est augmentée "
"lors de changements de moindre importance. C est un micro-niveau -- elle est "
"augmentée à chaque sortie de correctifs de bogue."
#: faq/general.rst:134
msgid ""
"*C* is the micro version number -- it is incremented for each bugfix release."
msgstr ""
#: faq/general.rst:136
msgid "See :pep:`6` for more information about bugfix releases."
msgstr ""
#: faq/general.rst:138
msgid ""
"Not all releases are bugfix releases. In the run-up to a new major release, "
"a series of development releases are made, denoted as alpha, beta, or "
"release candidate. Alphas are early releases in which interfaces aren't yet "
@ -316,24 +327,31 @@ msgstr ""
"modules, les *release candidate* sont figées, elles ne font aucun changement "
"à l'exception de ceux nécessaires pour corriger des bogues critiques."
#: faq/general.rst:142
msgid ""
"Alpha, beta and release candidate versions have an additional suffix. The "
"suffix for an alpha version is \"aN\" for some small number N, the suffix "
"for a beta version is \"bN\" for some small number N, and the suffix for a "
"release candidate version is \"rcN\" for some small number N. In other "
"words, all versions labeled 2.0aN precede the versions labeled 2.0bN, which "
"precede versions labeled 2.0rcN, and *those* precede 2.0."
#: faq/general.rst:146
msgid "Alpha, beta and release candidate versions have an additional suffix:"
msgstr ""
#: faq/general.rst:148
msgid "The suffix for an alpha version is \"aN\" for some small number *N*."
msgstr ""
"Les versions *alpha*, *beta* et *release candidate* ont un suffixe "
"supplémentaire. Le suffixe pour une version alpha est « aN » où N est un "
"petit nombre, le suffixe pour une version *beta* est *bN* où N est un petit "
"nombre, et le suffixe pour une *release candidate* est *rcN* où N est un "
"petit nombre. En d'autres mots, toutes les versions nommées *2.0.aN* "
"précèdent les versions *2.0.bN*, qui elles-mêmes précèdent 2.0rcN, et "
"*celles-ci* précèdent la version 2.0."
#: faq/general.rst:149
msgid "The suffix for a beta version is \"bN\" for some small number *N*."
msgstr ""
#: faq/general.rst:150
msgid ""
"The suffix for a release candidate version is \"rcN\" for some small number "
"*N*."
msgstr ""
#: faq/general.rst:152
msgid ""
"In other words, all versions labeled *2.0aN* precede the versions labeled "
"*2.0bN*, which precede versions labeled *2.0rcN*, and *those* precede 2.0."
msgstr ""
#: faq/general.rst:155
msgid ""
"You may also find version numbers with a \"+\" suffix, e.g. \"2.2+\". These "
"are unreleased versions, built directly from the CPython development "
@ -347,7 +365,7 @@ msgstr ""
"finale d'une version mineure, la version est augmentée à la prochaine "
"version mineure, qui devient la version *a0*, c'est-à-dire *2.4a0*."
#: faq/general.rst:154
#: faq/general.rst:160
msgid ""
"See also the documentation for :data:`sys.version`, :data:`sys.hexversion`, "
"and :data:`sys.version_info`."
@ -355,11 +373,11 @@ msgstr ""
"Voir aussi la documentation pour for :data:`sys.version`, :data:`sys."
"hexversion`, et :data:`sys.version_info`."
#: faq/general.rst:159
#: faq/general.rst:165
msgid "How do I obtain a copy of the Python source?"
msgstr "Comment obtenir une copie du code source de Python ?"
#: faq/general.rst:161
#: faq/general.rst:167
msgid ""
"The latest Python source distribution is always available from python.org, "
"at https://www.python.org/downloads/. The latest development sources can be "
@ -370,7 +388,7 @@ msgstr ""
"dernière version en développement peut être obtenue à https://github.com/"
"python/cpython/."
#: faq/general.rst:165
#: faq/general.rst:171
msgid ""
"The source distribution is a gzipped tar file containing the complete C "
"source, Sphinx-formatted documentation, Python library modules, example "
@ -383,7 +401,7 @@ msgstr ""
"utiles distribuables librement. Le code source sera compilé et prêt à "
"fonctionner immédiatement sur la plupart des plateformes UNIX."
#: faq/general.rst:170
#: faq/general.rst:176
msgid ""
"Consult the `Getting Started section of the Python Developer's Guide "
"<https://devguide.python.org/setup/>`__ for more information on getting the "
@ -393,11 +411,11 @@ msgstr ""
"devguide.python.org/setup/>`__ pour plus d'informations sur comment obtenir "
"le code source et le compiler."
#: faq/general.rst:176
#: faq/general.rst:182
msgid "How do I get documentation on Python?"
msgstr "Comment obtenir la documentation de Python ?"
#: faq/general.rst:180
#: faq/general.rst:186
msgid ""
"The standard documentation for the current stable version of Python is "
"available at https://docs.python.org/3/. PDF, plain text, and downloadable "
@ -407,22 +425,24 @@ msgstr ""
"https://docs.python.org/3/. Des versions aux formats PDF, texte et HTML "
"sont aussi disponibles à https://docs.python.org/3/download.html."
#: faq/general.rst:184
#: faq/general.rst:190
#, fuzzy
msgid ""
"The documentation is written in reStructuredText and processed by `the "
"Sphinx documentation tool <http://sphinx-doc.org/>`__. The reStructuredText "
"source for the documentation is part of the Python source distribution."
"Sphinx documentation tool <https://www.sphinx-doc.org/>`__. The "
"reStructuredText source for the documentation is part of the Python source "
"distribution."
msgstr ""
"La documentation est écrite au format *reStructuredText* et traitée par "
"l'outil de documentation `Sphinx <http://sphinx-doc.org/>`__. La source du "
"*reStructuredText* pour la documentation constitue une partie des sources de "
"Python."
#: faq/general.rst:190
#: faq/general.rst:196
msgid "I've never programmed before. Is there a Python tutorial?"
msgstr "Je n'ai jamais programmé avant. Existe-t-il un tutoriel Python ?"
#: faq/general.rst:192
#: faq/general.rst:198
msgid ""
"There are numerous tutorials and books available. The standard "
"documentation includes :ref:`tutorial-index`."
@ -430,7 +450,7 @@ msgstr ""
"Il y a de nombreux tutoriels et livres disponibles. La documentation "
"standard inclut :ref:`tutorial-index`."
#: faq/general.rst:195
#: faq/general.rst:201
msgid ""
"Consult `the Beginner's Guide <https://wiki.python.org/moin/"
"BeginnersGuide>`_ to find information for beginning Python programmers, "
@ -440,11 +460,11 @@ msgstr ""
"BeginnersGuide>`_ afin de trouver des informations pour les développeurs "
"Python débutants, incluant une liste de tutoriels."
#: faq/general.rst:200
#: faq/general.rst:206
msgid "Is there a newsgroup or mailing list devoted to Python?"
msgstr "Y a-t-il un forum ou une liste de diffusion dédié à Python ?"
#: faq/general.rst:202
#: faq/general.rst:208
msgid ""
"There is a newsgroup, :newsgroup:`comp.lang.python`, and a mailing list, "
"`python-list <https://mail.python.org/mailman/listinfo/python-list>`_. The "
@ -461,7 +481,7 @@ msgstr ""
"des centaines de messages chaque jour, et les lecteurs du réseau Usenet sont "
"souvent plus capables de faire face à ce volume."
#: faq/general.rst:209
#: faq/general.rst:215
msgid ""
"Announcements of new software releases and events can be found in comp.lang."
"python.announce, a low-traffic moderated list that receives about five "
@ -474,7 +494,7 @@ msgstr ""
"des annonces Python <https://mail.python.org/mailman/listinfo/python-"
"announce-list>`_."
#: faq/general.rst:214
#: faq/general.rst:220
msgid ""
"More info about other mailing lists and newsgroups can be found at https://"
"www.python.org/community/lists/."
@ -482,11 +502,11 @@ msgstr ""
"Plus d'informations à propos des autres listes de diffusion et forums "
"peuvent être trouvées à https://www.python.org/community/lists/."
#: faq/general.rst:219
#: faq/general.rst:225
msgid "How do I get a beta test version of Python?"
msgstr "Comment obtenir une version bêta test de Python ?"
#: faq/general.rst:221
#: faq/general.rst:227
msgid ""
"Alpha and beta releases are available from https://www.python.org/"
"downloads/. All releases are announced on the comp.lang.python and comp."
@ -499,7 +519,7 @@ msgstr ""
"de Python à https://www.python.org/; un flux RSS d'actualités y est aussi "
"disponible."
#: faq/general.rst:226
#: faq/general.rst:232
msgid ""
"You can also access the development version of Python through Git. See `The "
"Python Developer's Guide <https://devguide.python.org/>`_ for details."
@ -508,11 +528,11 @@ msgstr ""
"`Le Guide du Développeur Python <https://devguide.python.org/>`_ pour plus "
"de détails."
#: faq/general.rst:231
#: faq/general.rst:237
msgid "How do I submit bug reports and patches for Python?"
msgstr "Comment soumettre un rapport de bogues ou un correctif pour Python ?"
#: faq/general.rst:233
#: faq/general.rst:239
msgid ""
"To report a bug or submit a patch, please use the Roundup installation at "
"https://bugs.python.org/."
@ -520,7 +540,7 @@ msgstr ""
"Pour reporter un bogue ou soumettre un correctif, merci d'utiliser https://"
"bugs.python.org/."
#: faq/general.rst:236
#: faq/general.rst:242
msgid ""
"You must have a Roundup account to report bugs; this makes it possible for "
"us to contact you if we have follow-up questions. It will also enable "
@ -537,7 +557,7 @@ msgstr ""
"réinitialisation de mot de passe de Roundup <https://bugs.python.org/user?"
"@template=forgotten>`_."
#: faq/general.rst:242
#: faq/general.rst:248
msgid ""
"For more information on how Python is developed, consult `the Python "
"Developer's Guide <https://devguide.python.org/>`_."
@ -545,19 +565,19 @@ msgstr ""
"Pour davantage d'informations sur comment Python est développé, consultez "
"`le Guide du Développeur Python <https://devguide.python.org/>`_."
#: faq/general.rst:247
#: faq/general.rst:253
msgid "Are there any published articles about Python that I can reference?"
msgstr ""
"Existe-t-il des articles publiés au sujet de Python auxquels je peux me "
"référer ?"
#: faq/general.rst:249
#: faq/general.rst:255
msgid "It's probably best to cite your favorite book about Python."
msgstr ""
"C'est probablement mieux de vous référer à votre livre favori à propos de "
"Python."
#: faq/general.rst:251
#: faq/general.rst:257
msgid ""
"The very first article about Python was written in 1991 and is now quite "
"outdated."
@ -565,7 +585,7 @@ msgstr ""
"Le tout premier article à propos de Python a été écrit en 1991 et est "
"maintenant obsolète."
#: faq/general.rst:254
#: faq/general.rst:260
msgid ""
"Guido van Rossum and Jelke de Boer, \"Interactively Testing Remote Servers "
"Using the Python Programming Language\", CWI Quarterly, Volume 4, Issue 4 "
@ -575,11 +595,11 @@ msgstr ""
"Using the Python Programming Language* », CWI Quarterly, Volume 4, Issue 4 "
"(December 1991), Amsterdam, pp 283--303."
#: faq/general.rst:260
#: faq/general.rst:266
msgid "Are there any books on Python?"
msgstr "Y a-t-il des livres au sujet de Python ?"
#: faq/general.rst:262
#: faq/general.rst:268
msgid ""
"Yes, there are many, and more are being published. See the python.org wiki "
"at https://wiki.python.org/moin/PythonBooks for a list."
@ -587,7 +607,7 @@ msgstr ""
"Oui, il y en a beaucoup, et d'autres sont en cours de publication. Voir le "
"wiki python à https://wiki.python.org/moin/PythonBooks pour avoir une liste."
#: faq/general.rst:265
#: faq/general.rst:271
msgid ""
"You can also search online bookstores for \"Python\" and filter out the "
"Monty Python references; or perhaps search for \"Python\" and \"language\"."
@ -596,25 +616,26 @@ msgstr ""
"terme « Python » et éliminer les références concernant les Monty Python, ou "
"peut-être faire une recherche avec les termes « langage » et « Python »."
#: faq/general.rst:270
#: faq/general.rst:276
msgid "Where in the world is www.python.org located?"
msgstr "Où www.python.org est-il localisé dans le monde ?"
#: faq/general.rst:272
#: faq/general.rst:278
#, fuzzy
msgid ""
"The Python project's infrastructure is located all over the world and is "
"managed by the Python Infrastructure Team. Details `here <http://infra.psf."
"managed by the Python Infrastructure Team. Details `here <https://infra.psf."
"io>`__."
msgstr ""
"L'infrastructure du projet Python est située dans le monde entier et est "
"gérée par l'équipe de l'infrastructure Python. Plus de détails `ici <http://"
"infra.psf.io>`__."
#: faq/general.rst:277
#: faq/general.rst:283
msgid "Why is it called Python?"
msgstr "Pourquoi le nom Python ?"
#: faq/general.rst:279
#: faq/general.rst:285
msgid ""
"When he began implementing Python, Guido van Rossum was also reading the "
"published scripts from `\"Monty Python's Flying Circus\" <https://en."
@ -628,23 +649,23 @@ msgstr ""
"BBC. Van Rossum a pensé qu'il avait besoin d'un nom court, unique, et un peu "
"mystérieux, donc il a décidé de l'appeler le langage Python."
#: faq/general.rst:287
#: faq/general.rst:293
msgid "Do I have to like \"Monty Python's Flying Circus\"?"
msgstr "Dois-je aimer \"Monty Python's Flying Circus\" ?"
#: faq/general.rst:289
#: faq/general.rst:295
msgid "No, but it helps. :)"
msgstr "Non, mais ça peut aider. :)"
#: faq/general.rst:293
#: faq/general.rst:299
msgid "Python in the real world"
msgstr "Python c'est le monde réel"
#: faq/general.rst:296
#: faq/general.rst:302
msgid "How stable is Python?"
msgstr "Quel est le niveau de stabilité de Python ?"
#: faq/general.rst:298
#: faq/general.rst:304
msgid ""
"Very stable. New, stable releases have been coming out roughly every 6 to "
"18 months since 1991, and this seems likely to continue. As of version 3.9, "
@ -654,7 +675,7 @@ msgstr ""
"depuis 1991, et il semble probable que ça continue. À partir de la version "
"3.9, Python aura une nouvelle version majeure tous les 12 mois (:pep:`602`)."
#: faq/general.rst:302
#: faq/general.rst:308
msgid ""
"The developers issue \"bugfix\" releases of older versions, so the stability "
"of existing releases gradually improves. Bugfix releases, indicated by a "
@ -671,7 +692,7 @@ msgstr ""
"garanti que les interfaces resteront les mêmes tout au long de la série de "
"versions correctives."
#: faq/general.rst:309
#: faq/general.rst:315
msgid ""
"The latest stable releases can always be found on the `Python download page "
"<https://www.python.org/downloads/>`_. There are two production-ready "
@ -686,11 +707,11 @@ msgstr ""
"largement utilisées. Bien que Python 2 soit encore utilisé, `il n'est "
"désormais plus maintenu <https://www.python.org/dev/peps/pep-0373/>`_."
#: faq/general.rst:316
#: faq/general.rst:322
msgid "How many people are using Python?"
msgstr "Combien de personnes utilisent Python ?"
#: faq/general.rst:318
#: faq/general.rst:324
msgid ""
"There are probably millions of users, though it's difficult to obtain an "
"exact count."
@ -698,7 +719,7 @@ msgstr ""
"Il y a probablement des millions d'utilisateurs, bien qu'il soit difficile "
"d'en déterminer le nombre exact."
#: faq/general.rst:321
#: faq/general.rst:327
msgid ""
"Python is available for free download, so there are no sales figures, and "
"it's available from many different sites and packaged with many Linux "
@ -709,7 +730,7 @@ msgstr ""
"il est inclus avec de beaucoup de distributions Linux, donc les statistiques "
"de téléchargement ne donnent pas la totalité non plus."
#: faq/general.rst:325
#: faq/general.rst:331
msgid ""
"The comp.lang.python newsgroup is very active, but not all Python users post "
"to the group or even read it."
@ -717,11 +738,11 @@ msgstr ""
"Le forum *comp.lang.python* est très actif, mais tous les utilisateurs de "
"Python ne laissent pas de messages dessus ou même ne le lisent pas."
#: faq/general.rst:330
#: faq/general.rst:336
msgid "Have any significant projects been done in Python?"
msgstr "Y a-t-il un nombre de projets significatif réalisés en Python ?"
#: faq/general.rst:332
#: faq/general.rst:338
msgid ""
"See https://www.python.org/about/success for a list of projects that use "
"Python. Consulting the proceedings for `past Python conferences <https://www."
@ -734,11 +755,12 @@ msgstr ""
"s'avère que les contributions proviennent de nombreux organismes et "
"entreprises divers."
#: faq/general.rst:337
#: faq/general.rst:343
#, fuzzy
msgid ""
"High-profile Python projects include `the Mailman mailing list manager "
"<http://www.list.org>`_ and `the Zope application server <http://www.zope."
"org>`_. Several Linux distributions, most notably `Red Hat <https://www."
"<https://www.list.org>`_ and `the Zope application server <https://www.zope."
"dev>`_. Several Linux distributions, most notably `Red Hat <https://www."
"redhat.com>`_, have written part or all of their installer and system "
"administration software in Python. Companies that use Python internally "
"include Google, Yahoo, and Lucasfilm Ltd."
@ -750,11 +772,11 @@ msgstr ""
"logiciel d'administration système en Python. Les entreprises qui utilisent "
"Python en interne comprennent Google, Yahoo, et Lucasfilm Ltd."
#: faq/general.rst:346
#: faq/general.rst:352
msgid "What new developments are expected for Python in the future?"
msgstr "Quelles sont les nouveautés en développement attendues pour Python ?"
#: faq/general.rst:348
#: faq/general.rst:354
msgid ""
"See https://www.python.org/dev/peps/ for the Python Enhancement Proposals "
"(PEPs). PEPs are design documents describing a suggested new feature for "
@ -769,7 +791,7 @@ msgstr ""
"logique. Recherchez une PEP intitulée \"Python X.Y Release Schedule\", où X."
"Y est la version qui n'a pas encore été publiée."
#: faq/general.rst:354
#: faq/general.rst:360
msgid ""
"New development is discussed on `the python-dev mailing list <https://mail."
"python.org/mailman/listinfo/python-dev/>`_."
@ -777,12 +799,12 @@ msgstr ""
"Le nouveau développement est discuté sur `la liste de diffusion python-dev "
"<https://mail.python.org/mailman/listinfo/python-dev/>`_."
#: faq/general.rst:359
#: faq/general.rst:365
msgid "Is it reasonable to propose incompatible changes to Python?"
msgstr ""
"Est-il raisonnable de proposer des changements incompatibles dans Python ?"
#: faq/general.rst:361
#: faq/general.rst:367
msgid ""
"In general, no. There are already millions of lines of Python code around "
"the world, so any change in the language that invalidates more than a very "
@ -799,7 +821,7 @@ msgstr ""
"documentations, beaucoup de livres ont été écrits au sujet de Python, et "
"nous ne voulons pas les rendre invalides soudainement."
#: faq/general.rst:368
#: faq/general.rst:374
msgid ""
"Providing a gradual upgrade path is necessary if a feature has to be "
"changed. :pep:`5` describes the procedure followed for introducing backward-"
@ -808,17 +830,17 @@ msgstr ""
"En fournissant un rythme de mise à jour progressif qui est obligatoire si "
"une fonctionnalité doit être changée."
#: faq/general.rst:374
#: faq/general.rst:380
msgid "Is Python a good language for beginning programmers?"
msgstr ""
"Existe-t-il un meilleur langage de programmation pour les programmeurs "
"débutants ?"
#: faq/general.rst:376
#: faq/general.rst:382
msgid "Yes."
msgstr "Oui."
#: faq/general.rst:378
#: faq/general.rst:384
msgid ""
"It is still common to start students with a procedural and statically typed "
"language such as Pascal, C, or a subset of C++ or Java. Students may be "
@ -842,7 +864,7 @@ msgstr ""
"peuvent même probablement travailler avec des objets définis dans leurs "
"premiers cours."
#: faq/general.rst:388
#: faq/general.rst:394
msgid ""
"For a student who has never programmed before, using a statically typed "
"language seems unnatural. It presents additional complexity that the "
@ -862,7 +884,7 @@ msgstr ""
"terme, ce n'est pas nécessairement la meilleure idée pour s'adresser aux "
"étudiants durant leur tout premier cours."
#: faq/general.rst:396
#: faq/general.rst:402
msgid ""
"Many other aspects of Python make it a good first language. Like Java, "
"Python has a large standard library so that students can be assigned "
@ -885,7 +907,7 @@ msgstr ""
"réutilisation de code. Les modules tiers tels que PyGame sont aussi très "
"utiles pour étendre les compétences des étudiants."
#: faq/general.rst:405
#: faq/general.rst:411
msgid ""
"Python's interactive interpreter enables students to test language features "
"while they're programming. They can keep a window with the interpreter "
@ -899,7 +921,7 @@ msgstr ""
"souvenir des méthodes pour une liste, ils peuvent faire quelque chose comme "
"ça ::"
#: faq/general.rst:434
#: faq/general.rst:440
msgid ""
"With the interpreter, documentation is never far from the student as they "
"are programming."
@ -907,15 +929,16 @@ msgstr ""
"Avec l'interpréteur, la documentation n'est jamais loin des étudiants quand "
"ils travaillent."
#: faq/general.rst:437
#: faq/general.rst:443
#, fuzzy
msgid ""
"There are also good IDEs for Python. IDLE is a cross-platform IDE for "
"Python that is written in Python using Tkinter. PythonWin is a Windows-"
"specific IDE. Emacs users will be happy to know that there is a very good "
"Python mode for Emacs. All of these programming environments provide syntax "
"highlighting, auto-indenting, and access to the interactive interpreter "
"while coding. Consult `the Python wiki <https://wiki.python.org/moin/"
"PythonEditors>`_ for a full list of Python editing environments."
"Python that is written in Python using Tkinter. Emacs users will be happy to "
"know that there is a very good Python mode for Emacs. All of these "
"programming environments provide syntax highlighting, auto-indenting, and "
"access to the interactive interpreter while coding. Consult `the Python "
"wiki <https://wiki.python.org/moin/PythonEditors>`_ for a full list of "
"Python editing environments."
msgstr ""
"Il y a aussi de bons environnements de développement intégrés (EDIs) pour "
"Python. IDLE est un EDI multiplateformes pour Python qui est écrit en Python "
@ -927,7 +950,7 @@ msgstr ""
"<https://wiki.python.org/moin/PythonEditors>`_ pour une liste complète des "
"environnements de développement intégrés."
#: faq/general.rst:445
#: faq/general.rst:451
msgid ""
"If you want to discuss Python's use in education, you may be interested in "
"joining `the edu-sig mailing list <https://www.python.org/community/sigs/"
@ -936,3 +959,33 @@ msgstr ""
"Si vous voulez discuter de l'usage de Python dans l'éducation, vous devriez "
"intéressé pour rejoindre `la liste de diffusion pour l'enseignement <https://"
"www.python.org/community/sigs/current/edu-sig>`_."
#~ msgid ""
#~ "Python versions are numbered A.B.C or A.B. A is the major version number "
#~ "-- it is only incremented for really major changes in the language. B is "
#~ "the minor version number, incremented for less earth-shattering changes. "
#~ "C is the micro-level -- it is incremented for each bugfix release. See :"
#~ "pep:`6` for more information about bugfix releases."
#~ msgstr ""
#~ "Les versions de Python sont numérotées A.B.C ou A.B. A est une version "
#~ "majeure -- elle est augmentée seulement lorsqu'il y a des changements "
#~ "conséquents dans le langage. B est une version mineure, elle est "
#~ "augmentée lors de changements de moindre importance. C est un micro-"
#~ "niveau -- elle est augmentée à chaque sortie de correctifs de bogue."
#~ msgid ""
#~ "Alpha, beta and release candidate versions have an additional suffix. "
#~ "The suffix for an alpha version is \"aN\" for some small number N, the "
#~ "suffix for a beta version is \"bN\" for some small number N, and the "
#~ "suffix for a release candidate version is \"rcN\" for some small number "
#~ "N. In other words, all versions labeled 2.0aN precede the versions "
#~ "labeled 2.0bN, which precede versions labeled 2.0rcN, and *those* precede "
#~ "2.0."
#~ msgstr ""
#~ "Les versions *alpha*, *beta* et *release candidate* ont un suffixe "
#~ "supplémentaire. Le suffixe pour une version alpha est « aN » où N est un "
#~ "petit nombre, le suffixe pour une version *beta* est *bN* où N est un "
#~ "petit nombre, et le suffixe pour une *release candidate* est *rcN* où N "
#~ "est un petit nombre. En d'autres mots, toutes les versions nommées *2.0."
#~ "aN* précèdent les versions *2.0.bN*, qui elles-mêmes précèdent 2.0rcN, et "
#~ "*celles-ci* précèdent la version 2.0."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-09-23 16:16+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2021-12-16 02:34+0100\n"
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -93,10 +93,11 @@ msgstr ""
"d'environnement :envvar:`TCL_LIBRARY` et :envvar:`TK_LIBRARY`."
#: faq/gui.rst:49
#, fuzzy
msgid ""
"To get truly stand-alone applications, the Tcl scripts that form the library "
"have to be integrated into the application as well. One tool supporting that "
"is SAM (stand-alone modules), which is part of the Tix distribution (http://"
"is SAM (stand-alone modules), which is part of the Tix distribution (https://"
"tix.sourceforge.net/)."
msgstr ""
"Pour obtenir des applications vraiment autonomes, les scripts *Tcl* qui "

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-05-21 16:37+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2021-12-06 20:15+0100\n"
"Last-Translator: Fipaddict <fipaddict@protonmail.com>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -337,11 +337,12 @@ msgid "How do I create documentation from doc strings?"
msgstr "Comment générer la documentation à partir des *docstrings* ?"
#: faq/library.rst:181
#, fuzzy
msgid ""
"The :mod:`pydoc` module can create HTML from the doc strings in your Python "
"source code. An alternative for creating API documentation purely from "
"docstrings is `epydoc <http://epydoc.sourceforge.net/>`_. `Sphinx <http://"
"sphinx-doc.org>`_ can also include docstring content."
"docstrings is `epydoc <https://epydoc.sourceforge.net/>`_. `Sphinx <https://"
"www.sphinx-doc.org>`_ can also include docstring content."
msgstr ""
"Le module :mod:`pydoc` peut générer du HTML à partir des *docstrings* du "
"code source Python. Il est aussi possible de documenter une API uniquement à "
@ -723,18 +724,20 @@ msgstr "Comment copier un fichier ?"
#: faq/library.rst:486
msgid ""
"The :mod:`shutil` module contains a :func:`~shutil.copyfile` function. Note "
"that on MacOS 9 it doesn't copy the resource fork and Finder info."
"The :mod:`shutil` module contains a :func:`~shutil.copyfile` function. Note "
"that on Windows NTFS volumes, it does not copy `alternate data streams "
"<https://en.wikipedia.org/wiki/NTFS#Alternate_data_stream_(ADS)>`_ nor "
"`resource forks <https://en.wikipedia.org/wiki/Resource_fork>`__ on macOS "
"HFS+ volumes, though both are now rarely used. It also doesn't copy file "
"permissions and metadata, though using :func:`shutil.copy2` instead will "
"preserve most (though not all) of it."
msgstr ""
"Le module :mod:`shutil` fournit la fonction :func:`~shutil.copyfile`. Sous "
"MacOS 9, celle-ci ne copie pas le clonage de ressources ni les informations "
"du chercheur."
#: faq/library.rst:491
#: faq/library.rst:497
msgid "How do I read (or write) binary data?"
msgstr "Comment lire (ou écrire) des données binaires ?"
#: faq/library.rst:493
#: faq/library.rst:499
msgid ""
"To read or write complex binary data formats, it's best to use the :mod:"
"`struct` module. It allows you to take a string containing binary data "
@ -745,7 +748,7 @@ msgstr ""
"une chaîne de caractères qui contient des données binaires, souvent des "
"nombres, en objets Python, et vice-versa."
#: faq/library.rst:497
#: faq/library.rst:503
msgid ""
"For example, the following code reads two 2-byte integers and one 4-byte "
"integer in big-endian format from a file::"
@ -753,7 +756,7 @@ msgstr ""
"Par exemple, le code suivant lit, depuis un fichier, deux entiers codés sur "
"2 octets et un entier codé sur 4 octets, en format gros-boutiste ::"
#: faq/library.rst:506
#: faq/library.rst:512
msgid ""
"The '>' in the format string forces big-endian data; the letter 'h' reads "
"one \"short integer\" (2 bytes), and 'l' reads one \"long integer\" (4 "
@ -763,7 +766,7 @@ msgstr ""
"mode gros-boutiste, la lettre « h » indique un entier court (2 octets) et la "
"lettre « l » indique un entier long (4 octets)."
#: faq/library.rst:510
#: faq/library.rst:516
msgid ""
"For data that is more regular (e.g. a homogeneous list of ints or floats), "
"you can also use the :mod:`array` module."
@ -772,7 +775,7 @@ msgstr ""
"nombres à virgule flottante), il est possible d'utiliser le module :mod:"
"`array`."
#: faq/library.rst:515
#: faq/library.rst:521
msgid ""
"To read and write binary data, it is mandatory to open the file in binary "
"mode (here, passing ``\"rb\"`` to :func:`open`). If you use ``\"r\"`` "
@ -785,13 +788,13 @@ msgstr ""
"en mode textuel et ``f.read()`` renvoie des objets :class:`str` au lieu "
"d'objets :class:`bytes`."
#: faq/library.rst:523
#: faq/library.rst:529
msgid "I can't seem to use os.read() on a pipe created with os.popen(); why?"
msgstr ""
"Il me semble impossible d'utiliser ``os.read()`` sur un tube créé avec ``os."
"popen()`` ; pourquoi ?"
#: faq/library.rst:525
#: faq/library.rst:531
msgid ""
":func:`os.read` is a low-level function which takes a file descriptor, a "
"small integer representing the opened file. :func:`os.popen` creates a high-"
@ -806,34 +809,34 @@ msgstr ""
"octets d'un tube *p* créé avec :func:`os.popen`, il faut utiliser ``p."
"read(n)``."
#: faq/library.rst:612
#: faq/library.rst:618
msgid "How do I access the serial (RS232) port?"
msgstr "Comment accéder au port de transmission en série (RS-232) ?"
#: faq/library.rst:614
#: faq/library.rst:620
msgid "For Win32, OSX, Linux, BSD, Jython, IronPython:"
msgstr "Pour Win32, OSX, Linux, BSD, Jython et IronPython :"
#: faq/library.rst:616
#: faq/library.rst:622
msgid "https://pypi.org/project/pyserial/"
msgstr "https://pypi.org/project/pyserial/"
#: faq/library.rst:618
#: faq/library.rst:624
msgid "For Unix, see a Usenet post by Mitch Chapman:"
msgstr ""
"Pour Unix, référez-vous à une publication sur Usenet de Mitch Chapman :"
#: faq/library.rst:620
#: faq/library.rst:626
msgid "https://groups.google.com/groups?selm=34A04430.CF9@ohioee.com"
msgstr "https://groups.google.com/groups?selm=34A04430.CF9@ohioee.com"
#: faq/library.rst:624
#: faq/library.rst:630
msgid "Why doesn't closing sys.stdout (stdin, stderr) really close it?"
msgstr ""
"Pourquoi fermer *sys.stdout*, *sys.stdin*, *sys.stderr* ne les ferme pas "
"réellement ?"
#: faq/library.rst:626
#: faq/library.rst:632
msgid ""
"Python :term:`file objects <file object>` are a high-level layer of "
"abstraction on low-level C file descriptors."
@ -841,7 +844,7 @@ msgstr ""
"Les :term:`objets fichiers <file object>` en Python sont des abstractions de "
"haut niveau sur les descripteurs de fichier C de bas niveau."
#: faq/library.rst:629
#: faq/library.rst:635
msgid ""
"For most file objects you create in Python via the built-in :func:`open` "
"function, ``f.close()`` marks the Python file object as being closed from "
@ -855,7 +858,7 @@ msgstr ""
"enclenché automatiquement dans le destructeur de ``f``, lorsque ``f`` est "
"recyclé."
#: faq/library.rst:635
#: faq/library.rst:641
msgid ""
"But stdin, stdout and stderr are treated specially by Python, because of the "
"special status also given to them by C. Running ``sys.stdout.close()`` "
@ -867,7 +870,7 @@ msgstr ""
"close()`` marque l'objet fichier comme fermé du point de vue de Python, mais "
"le descripteur de fichier C associé n'est *pas* fermé."
#: faq/library.rst:640
#: faq/library.rst:646
msgid ""
"To close the underlying C file descriptor for one of these three, you should "
"first be sure that's what you really want to do (e.g., you may confuse "
@ -878,21 +881,21 @@ msgstr ""
"exemple, perturber le bon fonctionnement de modules qui font des opérations "
"d'entrée-sortie). Si c'est le cas, utilisez :func:`os.close` ::"
#: faq/library.rst:648
#: faq/library.rst:654
msgid "Or you can use the numeric constants 0, 1 and 2, respectively."
msgstr ""
"Il est aussi possible de fermer respectivement les constantes numériques 0, "
"1 ou 2."
#: faq/library.rst:652
#: faq/library.rst:658
msgid "Network/Internet Programming"
msgstr "Programmation réseau et Internet"
#: faq/library.rst:655
#: faq/library.rst:661
msgid "What WWW tools are there for Python?"
msgstr "Quels sont les outils Python dédiés à la Toile ?"
#: faq/library.rst:657
#: faq/library.rst:663
msgid ""
"See the chapters titled :ref:`internet` and :ref:`netdata` in the Library "
"Reference Manual. Python has many modules that will help you build server-"
@ -902,7 +905,7 @@ msgstr ""
"le manuel de référence de la bibliothèque. Python a de nombreux modules pour "
"construire des applications de Toile côté client comme côté serveur."
#: faq/library.rst:663
#: faq/library.rst:669
msgid ""
"A summary of available frameworks is maintained by Paul Boddie at https://"
"wiki.python.org/moin/WebProgramming\\ ."
@ -910,20 +913,22 @@ msgstr ""
"Un résumé des cadriciels disponibles est maintenu par Paul Boddie à "
"l'adresse https://wiki.python.org/moin/WebProgramming\\ ."
#: faq/library.rst:666
#: faq/library.rst:672
#, fuzzy
msgid ""
"Cameron Laird maintains a useful set of pages about Python web technologies "
"at http://phaseit.net/claird/comp.lang.python/web_python."
"at https://web.archive.org/web/20210224183619/http://phaseit.net/claird/comp."
"lang.python/web_python."
msgstr ""
"Cameron Laird maintient un ensemble intéressant d'articles sur les "
"technologies Python dédiées à la Toile à l'adresse http://phaseit.net/claird/"
"comp.lang.python/web_python."
#: faq/library.rst:671
#: faq/library.rst:677
msgid "How can I mimic CGI form submission (METHOD=POST)?"
msgstr "Comment reproduire un envoi de formulaire CGI (``METHOD=POST``) ?"
#: faq/library.rst:673
#: faq/library.rst:679
msgid ""
"I would like to retrieve web pages that are the result of POSTing a form. Is "
"there existing code that would let me do this easily?"
@ -931,11 +936,11 @@ msgstr ""
"J'aimerais récupérer la page de retour d'un envoi de formulaire sur la "
"Toile. Existe-t-il déjà du code qui pourrait m'aider à le faire facilement ?"
#: faq/library.rst:676
#: faq/library.rst:682
msgid "Yes. Here's a simple example that uses :mod:`urllib.request`::"
msgstr "Oui. Voici un exemple simple d'utilisation de :mod:`urllib.request` ::"
#: faq/library.rst:691
#: faq/library.rst:697
msgid ""
"Note that in general for percent-encoded POST operations, query strings must "
"be quoted using :func:`urllib.parse.urlencode`. For example, to send "
@ -946,15 +951,15 @@ msgstr ""
"`urllib.parse.urlencode`. Par exemple pour envoyer ``name=Guy Steele, Jr."
"`` ::"
#: faq/library.rst:699
#: faq/library.rst:705
msgid ":ref:`urllib-howto` for extensive examples."
msgstr ":ref:`urllib-howto` pour des exemples complets."
#: faq/library.rst:703
#: faq/library.rst:709
msgid "What module should I use to help with generating HTML?"
msgstr "Quel module utiliser pour générer du HTML ?"
#: faq/library.rst:707
#: faq/library.rst:713
msgid ""
"You can find a collection of useful links on the `Web Programming wiki page "
"<https://wiki.python.org/moin/WebProgramming>`_."
@ -962,15 +967,15 @@ msgstr ""
"La `page wiki de la programmation Toile <https://wiki.python.org/moin/"
"WebProgramming>`_ (en anglais) répertorie un ensemble de liens pertinents."
#: faq/library.rst:712
#: faq/library.rst:718
msgid "How do I send mail from a Python script?"
msgstr "Comment envoyer un courriel avec un script Python ?"
#: faq/library.rst:714
#: faq/library.rst:720
msgid "Use the standard library module :mod:`smtplib`."
msgstr "Utilisez le module :mod:`smtplib` de la bibliothèque standard."
#: faq/library.rst:716
#: faq/library.rst:722
msgid ""
"Here's a very simple interactive mail sender that uses it. This method will "
"work on any host that supports an SMTP listener. ::"
@ -978,7 +983,7 @@ msgstr ""
"Voici un exemple très simple d'un envoyeur de courriel qui l'utilise. Cette "
"méthode fonctionne sur tous les serveurs qui implémentent SMTP. ::"
#: faq/library.rst:736
#: faq/library.rst:742
msgid ""
"A Unix-only alternative uses sendmail. The location of the sendmail program "
"varies between systems; sometimes it is ``/usr/lib/sendmail``, sometimes ``/"
@ -990,13 +995,13 @@ msgstr ""
"sendmail`` ou ``/usr/sbin/sendmail``, la page de manuel de *sendmail* peut "
"vous aider. Par exemple ::"
#: faq/library.rst:756
#: faq/library.rst:762
msgid "How do I avoid blocking in the connect() method of a socket?"
msgstr ""
"Comment éviter de bloquer dans la méthode ``connect()`` d'un connecteur "
"réseau ?"
#: faq/library.rst:758
#: faq/library.rst:764
msgid ""
"The :mod:`select` module is commonly used to help with asynchronous I/O on "
"sockets."
@ -1004,7 +1009,7 @@ msgstr ""
"Le module :mod:`select` est fréquemment utilisé pour effectuer des entrées-"
"sorties asynchrones sur des connecteurs réseaux."
#: faq/library.rst:761
#: faq/library.rst:767
msgid ""
"To prevent the TCP connect from blocking, you can set the socket to non-"
"blocking mode. Then when you do the :meth:`socket.connect`, you will either "
@ -1021,7 +1026,7 @@ msgstr ""
"n'a pas encore aboutie. La valeur dépend du système d'exploitation, donc "
"renseignez-vous sur la valeur utilisée par votre système."
#: faq/library.rst:768
#: faq/library.rst:774
msgid ""
"You can use the :meth:`socket.connect_ex` method to avoid creating an "
"exception. It will just return the errno value. To poll, you can call :"
@ -1036,7 +1041,7 @@ msgstr ""
"argument de :meth:`select.select` pour vérifier si le connecteur est prêt à "
"recevoir des entrées."
#: faq/library.rst:774
#: faq/library.rst:780
msgid ""
"The :mod:`asyncio` module provides a general purpose single-threaded and "
"concurrent asynchronous library, which can be used for writing non-blocking "
@ -1048,20 +1053,20 @@ msgstr ""
"`Twisted <https://twistedmatrix.com/trac/>`_ en est une alternative "
"plébiscitée, avec un grand nombre de fonctionnalités."
#: faq/library.rst:782
#: faq/library.rst:788
msgid "Databases"
msgstr "Bases de données"
#: faq/library.rst:785
#: faq/library.rst:791
msgid "Are there any interfaces to database packages in Python?"
msgstr ""
"Existe-t-il des modules Python pour s'interfacer avec des bases de données ?"
#: faq/library.rst:787
#: faq/library.rst:793
msgid "Yes."
msgstr "Oui."
#: faq/library.rst:789
#: faq/library.rst:795
msgid ""
"Interfaces to disk-based hashes such as :mod:`DBM <dbm.ndbm>` and :mod:`GDBM "
"<dbm.gnu>` are also included with standard Python. There is also the :mod:"
@ -1073,7 +1078,7 @@ msgstr ""
"aussi le module :mod:`sqlite3` qui implémente une base de données "
"relationnelle légère sur disque."
#: faq/library.rst:794
#: faq/library.rst:800
msgid ""
"Support for most relational databases is available. See the "
"`DatabaseProgramming wiki page <https://wiki.python.org/moin/"
@ -1083,11 +1088,11 @@ msgstr ""
"Voir la page wiki `DatabaseProgramming <https://wiki.python.org/moin/"
"DatabaseProgramming>`_ pour plus de détails."
#: faq/library.rst:800
#: faq/library.rst:806
msgid "How do you implement persistent objects in Python?"
msgstr "Comment implémenter la persistance d'objets en Python ?"
#: faq/library.rst:802
#: faq/library.rst:808
msgid ""
"The :mod:`pickle` library module solves this in a very general way (though "
"you still can't store things like open files, sockets or windows), and the :"
@ -1099,15 +1104,15 @@ msgstr ""
"fenêtres par exemple), et le module :mod:`shelve` de la bibliothèque utilise "
"*pickle* et *(g)dbm* pour créer des liens persistants vers des objets Python."
#: faq/library.rst:809
#: faq/library.rst:815
msgid "Mathematics and Numerics"
msgstr "Mathématiques et calcul numérique"
#: faq/library.rst:812
#: faq/library.rst:818
msgid "How do I generate random numbers in Python?"
msgstr "Comment générer des nombres aléatoires en Python ?"
#: faq/library.rst:814
#: faq/library.rst:820
msgid ""
"The standard module :mod:`random` implements a random number generator. "
"Usage is simple::"
@ -1115,48 +1120,48 @@ msgstr ""
"Le module :mod:`random` de la bibliothèque standard comprend un générateur "
"de nombres aléatoires. Son utilisation est simple ::"
#: faq/library.rst:820
#: faq/library.rst:826
msgid "This returns a random floating point number in the range [0, 1)."
msgstr ""
"Le code précédent renvoie un nombre à virgule flottante aléatoire dans "
"l'intervalle [0, 1[."
#: faq/library.rst:822
#: faq/library.rst:828
msgid ""
"There are also many other specialized generators in this module, such as:"
msgstr "Ce module fournit beaucoup d'autres générateurs spécialisés comme :"
#: faq/library.rst:824
#: faq/library.rst:830
msgid "``randrange(a, b)`` chooses an integer in the range [a, b)."
msgstr "``randrange(a, b)`` génère un entier dans l'intervalle [a, b[."
#: faq/library.rst:825
#: faq/library.rst:831
msgid "``uniform(a, b)`` chooses a floating point number in the range [a, b)."
msgstr ""
"``uniform(a, b)`` génère un nombre à virgule flottante aléatoire dans "
"l'intervalle [a, b[."
#: faq/library.rst:826
#: faq/library.rst:832
msgid ""
"``normalvariate(mean, sdev)`` samples the normal (Gaussian) distribution."
msgstr "``normalvariate(mean, sdev)`` simule la loi normale (Gaussienne)."
#: faq/library.rst:828
#: faq/library.rst:834
msgid "Some higher-level functions operate on sequences directly, such as:"
msgstr ""
"Des fonctions de haut niveau opèrent directement sur des séquences comme :"
#: faq/library.rst:830
#: faq/library.rst:836
msgid "``choice(S)`` chooses a random element from a given sequence."
msgstr "``choice(S)`` sélectionne au hasard un élément d'une séquence donnée."
#: faq/library.rst:831
#: faq/library.rst:837
msgid "``shuffle(L)`` shuffles a list in-place, i.e. permutes it randomly."
msgstr ""
"``shuffle(L)`` mélange une liste en-place, c.-à-d. lui applique une "
"permutation aléatoire."
#: faq/library.rst:833
#: faq/library.rst:839
msgid ""
"There's also a ``Random`` class you can instantiate to create independent "
"multiple random number generators."
@ -1164,6 +1169,14 @@ msgstr ""
"Il existe aussi une classe ``Random`` qu'il est possible d'instancier pour "
"créer des générateurs aléatoires indépendants."
#~ msgid ""
#~ "The :mod:`shutil` module contains a :func:`~shutil.copyfile` function. "
#~ "Note that on MacOS 9 it doesn't copy the resource fork and Finder info."
#~ msgstr ""
#~ "Le module :mod:`shutil` fournit la fonction :func:`~shutil.copyfile`. "
#~ "Sous MacOS 9, celle-ci ne copie pas le clonage de ressources ni les "
#~ "informations du chercheur."
#~ msgid ""
#~ "For Windows: use `the consolelib module <http://effbot.org/zone/console-"
#~ "index.htm>`_."

File diff suppressed because it is too large Load Diff

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-05-21 16:37+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2022-05-27 12:17+0200\n"
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -515,6 +515,19 @@ msgstr ""
"touche s'est produite, et ``getch()`` qui récupère le caractère sans "
"l'afficher."
#: faq/windows.rst:281
msgid "How do I solve the missing api-ms-win-crt-runtime-l1-1-0.dll error?"
msgstr ""
#: faq/windows.rst:283
msgid ""
"This can occur on Python 3.5 and later when using Windows 8.1 or earlier "
"without all updates having been installed. First ensure your operating "
"system is supported and is up to date, and if that does not resolve the "
"issue, visit the `Microsoft support page <https://support.microsoft.com/en-"
"us/help/3118401/>`_ for guidance on manually installing the C Runtime update."
msgstr ""
#~ msgid ""
#~ "Borland note: convert :file:`python{NN}.lib` to OMF format using Coff2Omf."
#~ "exe first."

File diff suppressed because it is too large Load Diff

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-05-21 16:37+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2022-10-18 12:29+0200\n"
"Last-Translator: Mindiell <mindiell@mindiell.net>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -806,10 +806,11 @@ msgstr ""
"*n'ajoutez pas* de virgule à la fin."
#: howto/clinic.rst:542
#, fuzzy
msgid ""
"Compile, then run the relevant portions of the regression-test suite. This "
"change should not introduce any new compile-time warnings or errors, and "
"there should be no externally-visible change to Python's behavior."
"there should be no externally visible change to Python's behavior."
msgstr ""
"Compilez, puis faites tourner les portions idoines de la suite de tests de "
"régressions. Ce changement ne doit introduire aucun nouveau message d'erreur "
@ -2110,7 +2111,7 @@ msgstr ""
#: howto/clinic.rst:1123
msgid ""
"Sorry, there's no syntax for partially-cloning a function, or cloning a "
"Sorry, there's no syntax for partially cloning a function, or cloning a "
"function then modifying it. Cloning is an all-or nothing proposition."
msgstr ""
@ -2324,7 +2325,7 @@ msgid ""
"The default value used to initialize the C variable when there is no "
"default, but not specifying a default may result in an \"uninitialized "
"variable\" warning. This can easily happen when using option groups—"
"although properly-written code will never actually use this value, the "
"although properly written code will never actually use this value, the "
"variable does get passed in to the impl, and the C compiler will complain "
"about the \"use\" of the uninitialized value. This value should always be a "
"non-empty string."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-05-21 16:37+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2020-09-04 23:34+0200\n"
"Last-Translator: Khaïs COLIN <kh.col@orange.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -1039,8 +1039,9 @@ msgstr ""
"comment soumettre des améliorations à Python."
#: howto/curses.rst:540
#, fuzzy
msgid ""
"`Writing Programs with NCURSES <http://invisible-island.net/ncurses/ncurses-"
"`Writing Programs with NCURSES <https://invisible-island.net/ncurses/ncurses-"
"intro.html>`_: a lengthy tutorial for C programmers."
msgstr ""
"`Writing Programs with NCURSES <http://invisible-island.net/ncurses/ncurses-"
@ -1052,8 +1053,9 @@ msgid "`The ncurses man page <https://linux.die.net/man/3/ncurses>`_"
msgstr "`La page de manuel ncurses <https://linux.die.net/man/3/ncurses>`_"
#: howto/curses.rst:543
#, fuzzy
msgid ""
"`The ncurses FAQ <http://invisible-island.net/ncurses/ncurses.faq.html>`_"
"`The ncurses FAQ <https://invisible-island.net/ncurses/ncurses.faq.html>`_"
msgstr ""
"`La FAQ ncurses <http://invisible-island.net/ncurses/ncurses.faq.html>`_ "
"(ressource en anglais)"
@ -1069,10 +1071,11 @@ msgstr ""
"gestion des terminaux à l'aide de *curses* et *Urwid* (vidéo en anglais)."
#: howto/curses.rst:546
#, fuzzy
msgid ""
"`\"Console Applications with Urwid\" <http://www.pyvideo.org/video/1568/"
"console-applications-with-urwid>`_: video of a PyCon CA 2012 talk "
"demonstrating some applications written using Urwid."
"`\"Console Applications with Urwid\" <https://pyvideo.org/video/1568/console-"
"applications-with-urwid>`_: video of a PyCon CA 2012 talk demonstrating some "
"applications written using Urwid."
msgstr ""
"`\"Console Applications with Urwid\" <http://www.pyvideo.org/video/1568/"
"console-applications-with-urwid>`_ : vidéo d'une conférence lors de PyCon CA "

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-03-18 17:06+0100\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2021-12-16 17:28+0100\n"
"Last-Translator: Mathieu Dupuy <deronnax@gmail.com>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -570,14 +570,14 @@ msgid ""
"is a pure Python equivalent:"
msgstr ""
#: howto/descriptor.rst:699
#: howto/descriptor.rst:719
msgid ""
"Note, there is no :meth:`__getattr__` hook in the :meth:`__getattribute__` "
"code. That is why calling :meth:`__getattribute__` directly or with "
"``super().__getattribute__`` will bypass :meth:`__getattr__` entirely."
msgstr ""
#: howto/descriptor.rst:703
#: howto/descriptor.rst:723
msgid ""
"Instead, it is the dot operator and the :func:`getattr` function that are "
"responsible for invoking :meth:`__getattr__` whenever :meth:"
@ -585,12 +585,12 @@ msgid ""
"encapsulated in a helper function:"
msgstr ""
#: howto/descriptor.rst:753
#: howto/descriptor.rst:773
#, fuzzy
msgid "Invocation from a class"
msgstr "Appelé depuis un Classe"
#: howto/descriptor.rst:755
#: howto/descriptor.rst:775
msgid ""
"The logic for a dotted lookup such as ``A.x`` is in :meth:`type."
"__getattribute__`. The steps are similar to those for :meth:`object."
@ -598,27 +598,27 @@ msgid ""
"through the class's :term:`method resolution order`."
msgstr ""
#: howto/descriptor.rst:760
#: howto/descriptor.rst:780
msgid "If a descriptor is found, it is invoked with ``desc.__get__(None, A)``."
msgstr ""
#: howto/descriptor.rst:762
#: howto/descriptor.rst:782
msgid ""
"The full C implementation can be found in :c:func:`type_getattro()` and :c:"
"func:`_PyType_Lookup()` in :source:`Objects/typeobject.c`."
msgstr ""
#: howto/descriptor.rst:767
#: howto/descriptor.rst:787
msgid "Invocation from super"
msgstr ""
#: howto/descriptor.rst:769
#: howto/descriptor.rst:789
msgid ""
"The logic for super's dotted lookup is in the :meth:`__getattribute__` "
"method for object returned by :class:`super()`."
msgstr ""
#: howto/descriptor.rst:772
#: howto/descriptor.rst:792
#, fuzzy
msgid ""
"A dotted lookup such as ``super(A, obj).m`` searches ``obj.__class__."
@ -634,7 +634,7 @@ msgstr ""
"inchangé. S'il n'est pas dans le dictionnaire, la recherche de ``m`` revient "
"à une recherche utilisant :meth:`object.__getattribute__`."
#: howto/descriptor.rst:777
#: howto/descriptor.rst:797
#, fuzzy
msgid ""
"The full C implementation can be found in :c:func:`super_getattro()` in :"
@ -646,32 +646,32 @@ msgstr ""
"source:`Objects/typeobject.c` et un équivalent Python pur peut être trouvé "
"dans `Guido's Tutorial`_."
#: howto/descriptor.rst:784
#: howto/descriptor.rst:804
msgid "Summary of invocation logic"
msgstr ""
#: howto/descriptor.rst:786
#: howto/descriptor.rst:806
msgid ""
"The mechanism for descriptors is embedded in the :meth:`__getattribute__()` "
"methods for :class:`object`, :class:`type`, and :func:`super`."
msgstr ""
#: howto/descriptor.rst:789
#: howto/descriptor.rst:809
msgid "The important points to remember are:"
msgstr "Les points importants à retenir sont :"
#: howto/descriptor.rst:791
#: howto/descriptor.rst:811
#, fuzzy
msgid "Descriptors are invoked by the :meth:`__getattribute__` method."
msgstr "les descripteurs sont appelés par la méthode :meth:`__getattribute__`"
#: howto/descriptor.rst:793
#: howto/descriptor.rst:813
msgid ""
"Classes inherit this machinery from :class:`object`, :class:`type`, or :func:"
"`super`."
msgstr ""
#: howto/descriptor.rst:796
#: howto/descriptor.rst:816
#, fuzzy
msgid ""
"Overriding :meth:`__getattribute__` prevents automatic descriptor calls "
@ -680,7 +680,7 @@ msgstr ""
"redéfinir :meth:`__getattribute____` empêche les appels automatiques de "
"descripteurs"
#: howto/descriptor.rst:799
#: howto/descriptor.rst:819
#, fuzzy
msgid ""
":meth:`object.__getattribute__` and :meth:`type.__getattribute__` make "
@ -691,25 +691,25 @@ msgstr ""
":meth:`objet.__getattribute__` et :meth:`type.__getattribute__` font "
"différents appels à :meth:`__get__`."
#: howto/descriptor.rst:804
#: howto/descriptor.rst:824
#, fuzzy
msgid "Data descriptors always override instance dictionaries."
msgstr ""
"les descripteurs de données remplacent toujours les dictionnaires "
"d'instances."
#: howto/descriptor.rst:806
#: howto/descriptor.rst:826
#, fuzzy
msgid "Non-data descriptors may be overridden by instance dictionaries."
msgstr ""
"les descripteurs *non-data* peuvent être remplacés par des dictionnaires "
"d'instance."
#: howto/descriptor.rst:810
#: howto/descriptor.rst:830
msgid "Automatic name notification"
msgstr ""
#: howto/descriptor.rst:812
#: howto/descriptor.rst:832
msgid ""
"Sometimes it is desirable for a descriptor to know what class variable name "
"it was assigned to. When a new class is created, the :class:`type` "
@ -719,7 +719,7 @@ msgid ""
"and the *name* is the class variable the descriptor was assigned to."
msgstr ""
#: howto/descriptor.rst:819
#: howto/descriptor.rst:839
#, fuzzy
msgid ""
"The implementation details are in :c:func:`type_new()` and :c:func:"
@ -729,53 +729,53 @@ msgstr ""
"source:`Objects/typeobject.c` et un équivalent Python pur peut être trouvé "
"dans `Guido's Tutorial`_."
#: howto/descriptor.rst:822
#: howto/descriptor.rst:842
msgid ""
"Since the update logic is in :meth:`type.__new__`, notifications only take "
"place at the time of class creation. If descriptors are added to the class "
"afterwards, :meth:`__set_name__` will need to be called manually."
msgstr ""
#: howto/descriptor.rst:828
#: howto/descriptor.rst:848
msgid "ORM example"
msgstr ""
#: howto/descriptor.rst:830
#: howto/descriptor.rst:850
msgid ""
"The following code is simplified skeleton showing how data descriptors could "
"be used to implement an `object relational mapping <https://en.wikipedia.org/"
"wiki/Object%E2%80%93relational_mapping>`_."
"The following code is a simplified skeleton showing how data descriptors "
"could be used to implement an `object relational mapping <https://en."
"wikipedia.org/wiki/Object%E2%80%93relational_mapping>`_."
msgstr ""
#: howto/descriptor.rst:834
#: howto/descriptor.rst:854
msgid ""
"The essential idea is that the data is stored in an external database. The "
"Python instances only hold keys to the database's tables. Descriptors take "
"care of lookups or updates:"
msgstr ""
#: howto/descriptor.rst:853
#: howto/descriptor.rst:873
msgid ""
"We can use the :class:`Field` class to define `models <https://en.wikipedia."
"org/wiki/Database_model>`_ that describe the schema for each table in a "
"database:"
msgstr ""
#: howto/descriptor.rst:878
#: howto/descriptor.rst:898
msgid "To use the models, first connect to the database::"
msgstr ""
#: howto/descriptor.rst:883
#: howto/descriptor.rst:903
msgid ""
"An interactive session shows how data is retrieved from the database and how "
"it can be updated:"
msgstr ""
#: howto/descriptor.rst:928
#: howto/descriptor.rst:948
msgid "Pure Python Equivalents"
msgstr ""
#: howto/descriptor.rst:930
#: howto/descriptor.rst:950
#, fuzzy
msgid ""
"The descriptor protocol is simple and offers exciting possibilities. "
@ -789,11 +789,11 @@ msgstr ""
"statiques et les méthodes de classe sont toutes basées sur le protocole du "
"descripteur."
#: howto/descriptor.rst:937
#: howto/descriptor.rst:957
msgid "Properties"
msgstr "Propriétés"
#: howto/descriptor.rst:939
#: howto/descriptor.rst:959
#, fuzzy
msgid ""
"Calling :func:`property` is a succinct way of building a data descriptor "
@ -804,7 +804,7 @@ msgstr ""
"descripteur de données qui déclenche des appels de fonction lors de l'accès "
"à un attribut. Sa signature est ::"
#: howto/descriptor.rst:944
#: howto/descriptor.rst:964
#, fuzzy
msgid ""
"The documentation shows a typical use to define a managed attribute ``x``:"
@ -812,7 +812,7 @@ msgstr ""
"La documentation montre une utilisation typique pour définir un attribut "
"géré ``x`` ::"
#: howto/descriptor.rst:968
#: howto/descriptor.rst:988
#, fuzzy
msgid ""
"To see how :func:`property` is implemented in terms of the descriptor "
@ -821,7 +821,7 @@ msgstr ""
"Pour voir comment :func:`property` est implémenté dans le protocole du "
"descripteur, voici un un équivalent Python pur ::"
#: howto/descriptor.rst:1071
#: howto/descriptor.rst:1091
msgid ""
"The :func:`property` builtin helps whenever a user interface has granted "
"attribute access and then subsequent changes require the intervention of a "
@ -831,7 +831,7 @@ msgstr ""
"utilisateur a accordé l'accès à un attribut et que des modifications "
"ultérieures nécessitent l'intervention d'une méthode."
#: howto/descriptor.rst:1075
#: howto/descriptor.rst:1095
#, fuzzy
msgid ""
"For instance, a spreadsheet class may grant access to a cell value through "
@ -848,18 +848,18 @@ msgstr ""
"directement à l'attribut. La solution consiste à envelopper l'accès à "
"l'attribut de valeur dans un descripteur de données de propriété ::"
#: howto/descriptor.rst:1092
#: howto/descriptor.rst:1112
msgid ""
"Either the built-in :func:`property` or our :func:`Property` equivalent "
"would work in this example."
msgstr ""
#: howto/descriptor.rst:1097
#: howto/descriptor.rst:1117
#, fuzzy
msgid "Functions and methods"
msgstr "Fonctions et méthodes"
#: howto/descriptor.rst:1099
#: howto/descriptor.rst:1119
msgid ""
"Python's object oriented features are built upon a function based "
"environment. Using non-data descriptors, the two are merged seamlessly."
@ -868,7 +868,7 @@ msgstr ""
"environnement basé sur des fonctions. À l'aide de descripteurs *non-data*, "
"les deux sont fusionnés de façon transparente."
#: howto/descriptor.rst:1102
#: howto/descriptor.rst:1122
#, fuzzy
msgid ""
"Functions stored in class dictionaries get turned into methods when invoked. "
@ -884,13 +884,13 @@ msgstr ""
"convention Python, la référence de l'instance est appelée *self* mais peut "
"être appelée *this* ou tout autre nom de variable."
#: howto/descriptor.rst:1107
#: howto/descriptor.rst:1127
msgid ""
"Methods can be created manually with :class:`types.MethodType` which is "
"roughly equivalent to:"
msgstr ""
#: howto/descriptor.rst:1124
#: howto/descriptor.rst:1144
#, fuzzy
msgid ""
"To support automatic creation of methods, functions include the :meth:"
@ -904,7 +904,7 @@ msgstr ""
"*non-data* qui renvoient des méthodes liées lorsqu'elles sont appelées "
"depuis un objet. En Python pur, il fonctionne comme ceci ::"
#: howto/descriptor.rst:1140
#: howto/descriptor.rst:1160
#, fuzzy
msgid ""
"Running the following class in the interpreter shows how the function "
@ -913,47 +913,47 @@ msgstr ""
"L'exécution de l'interpréteur montre comment le descripteur de fonction se "
"comporte dans la pratique ::"
#: howto/descriptor.rst:1149
#: howto/descriptor.rst:1169
msgid ""
"The function has a :term:`qualified name` attribute to support introspection:"
msgstr ""
#: howto/descriptor.rst:1156
#: howto/descriptor.rst:1176
msgid ""
"Accessing the function through the class dictionary does not invoke :meth:"
"`__get__`. Instead, it just returns the underlying function object::"
msgstr ""
#: howto/descriptor.rst:1162
#: howto/descriptor.rst:1182
msgid ""
"Dotted access from a class calls :meth:`__get__` which just returns the "
"underlying function unchanged::"
msgstr ""
#: howto/descriptor.rst:1168
#: howto/descriptor.rst:1188
msgid ""
"The interesting behavior occurs during dotted access from an instance. The "
"dotted lookup calls :meth:`__get__` which returns a bound method object::"
msgstr ""
#: howto/descriptor.rst:1175
#: howto/descriptor.rst:1195
msgid ""
"Internally, the bound method stores the underlying function and the bound "
"instance::"
msgstr ""
#: howto/descriptor.rst:1184
#: howto/descriptor.rst:1204
msgid ""
"If you have ever wondered where *self* comes from in regular methods or "
"where *cls* comes from in class methods, this is it!"
msgstr ""
#: howto/descriptor.rst:1189
#: howto/descriptor.rst:1209
#, fuzzy
msgid "Kinds of methods"
msgstr "Fonctions et méthodes"
#: howto/descriptor.rst:1191
#: howto/descriptor.rst:1211
msgid ""
"Non-data descriptors provide a simple mechanism for variations on the usual "
"patterns of binding functions into methods."
@ -961,7 +961,7 @@ msgstr ""
"Les descripteurs *non-data* fournissent un mécanisme simple pour les "
"variations des patrons habituels des fonctions de liaison dans les méthodes."
#: howto/descriptor.rst:1194
#: howto/descriptor.rst:1214
#, fuzzy
msgid ""
"To recap, functions have a :meth:`__get__` method so that they can be "
@ -974,60 +974,60 @@ msgstr ""
"descripteur *non-data* transforme un appel ``obj.f(*args)``en ``f(obj, "
"*args)``. Appeler ``klass.f(*args)`` devient ``f(*args)``."
#: howto/descriptor.rst:1199
#: howto/descriptor.rst:1219
msgid "This chart summarizes the binding and its two most useful variants:"
msgstr ""
"Ce tableau résume le lien (*binding*) et ses deux variantes les plus "
"utiles ::"
#: howto/descriptor.rst:1202
#: howto/descriptor.rst:1222
msgid "Transformation"
msgstr "Transformation"
#: howto/descriptor.rst:1202
#: howto/descriptor.rst:1222
#, fuzzy
msgid "Called from an object"
msgstr "Appelé depuis un Objet"
#: howto/descriptor.rst:1202
#: howto/descriptor.rst:1222
#, fuzzy
msgid "Called from a class"
msgstr "Appelé depuis un Classe"
#: howto/descriptor.rst:1205
#: howto/descriptor.rst:1225
msgid "function"
msgstr "fonction"
#: howto/descriptor.rst:1205
#: howto/descriptor.rst:1225
msgid "f(obj, \\*args)"
msgstr "f(obj, \\*args)"
#: howto/descriptor.rst:1207
#: howto/descriptor.rst:1227
msgid "f(\\*args)"
msgstr "f(\\*args)"
#: howto/descriptor.rst:1207
#: howto/descriptor.rst:1227
msgid "staticmethod"
msgstr "méthode statique"
#: howto/descriptor.rst:1209
#: howto/descriptor.rst:1229
msgid "classmethod"
msgstr "méthode de classe"
#: howto/descriptor.rst:1209
#: howto/descriptor.rst:1229
msgid "f(type(obj), \\*args)"
msgstr "f(type(obj), \\*args)"
#: howto/descriptor.rst:1209
#: howto/descriptor.rst:1229
msgid "f(cls, \\*args)"
msgstr "f(cls, \\*args)"
#: howto/descriptor.rst:1214
#: howto/descriptor.rst:1234
#, fuzzy
msgid "Static methods"
msgstr "méthode statique"
#: howto/descriptor.rst:1216
#: howto/descriptor.rst:1236
msgid ""
"Static methods return the underlying function without changes. Calling "
"either ``c.f`` or ``C.f`` is the equivalent of a direct lookup into ``object."
@ -1041,7 +1041,7 @@ msgstr ""
"__getattribute__(C, \"f\")``. Par conséquent, la fonction devient accessible "
"de manière identique à partir d'un objet ou d'une classe."
#: howto/descriptor.rst:1222
#: howto/descriptor.rst:1242
msgid ""
"Good candidates for static methods are methods that do not reference the "
"``self`` variable."
@ -1049,7 +1049,7 @@ msgstr ""
"Les bonnes candidates pour être méthode statique sont des méthodes qui ne "
"font pas référence à la variable ``self``."
#: howto/descriptor.rst:1225
#: howto/descriptor.rst:1245
msgid ""
"For instance, a statistics package may include a container class for "
"experimental data. The class provides normal methods for computing the "
@ -1071,7 +1071,7 @@ msgstr ""
"appelée à partir d'un objet ou de la classe : ``s.erf(1.5) --> .9332`` ou "
"``Sample.erf(1.5) --> .9332``."
#: howto/descriptor.rst:1234
#: howto/descriptor.rst:1254
#, fuzzy
msgid ""
"Since static methods return the underlying function with no changes, the "
@ -1080,7 +1080,7 @@ msgstr ""
"Depuis que les méthodes statiques renvoient la fonction sous-jacente sans "
"changement, les exemples dappels ne sont pas excitants ::"
#: howto/descriptor.rst:1251
#: howto/descriptor.rst:1271
#, fuzzy
msgid ""
"Using the non-data descriptor protocol, a pure Python version of :func:"
@ -1089,12 +1089,12 @@ msgstr ""
"En utilisant le protocole de descripteur *non-data*, une version Python pure "
"de :func:`staticmethod` ressemblerait à ceci ::"
#: howto/descriptor.rst:1290
#: howto/descriptor.rst:1310
#, fuzzy
msgid "Class methods"
msgstr "méthode de classe"
#: howto/descriptor.rst:1292
#: howto/descriptor.rst:1312
#, fuzzy
msgid ""
"Unlike static methods, class methods prepend the class reference to the "
@ -1105,7 +1105,7 @@ msgstr ""
"référence de classe dans la liste d'arguments avant d'appeler la fonction. "
"Ce format est le même que l'appelant soit un objet ou une classe ::"
#: howto/descriptor.rst:1310
#: howto/descriptor.rst:1330
#, fuzzy
msgid ""
"This behavior is useful whenever the method only needs to have a class "
@ -1121,14 +1121,14 @@ msgstr ""
"nouveau dictionnaire à partir d'une liste de clés. L'équivalent Python pur "
"est ::"
#: howto/descriptor.rst:1327
#: howto/descriptor.rst:1347
#, fuzzy
msgid "Now a new dictionary of unique keys can be constructed like this:"
msgstr ""
"Maintenant un nouveau dictionnaire de clés uniques peut être construit comme "
"ceci ::"
#: howto/descriptor.rst:1337
#: howto/descriptor.rst:1357
#, fuzzy
msgid ""
"Using the non-data descriptor protocol, a pure Python version of :func:"
@ -1137,7 +1137,7 @@ msgstr ""
"En utilisant le protocole de descripteur *non-data*, une version Python pure "
"de :func:`classmethod` ressemblerait à ceci ::"
#: howto/descriptor.rst:1386
#: howto/descriptor.rst:1406
msgid ""
"The code path for ``hasattr(type(self.f), '__get__')`` was added in Python "
"3.9 and makes it possible for :func:`classmethod` to support chained "
@ -1145,30 +1145,30 @@ msgid ""
"together:"
msgstr ""
#: howto/descriptor.rst:1406
#: howto/descriptor.rst:1426
msgid "Member objects and __slots__"
msgstr ""
#: howto/descriptor.rst:1408
#: howto/descriptor.rst:1428
msgid ""
"When a class defines ``__slots__``, it replaces instance dictionaries with a "
"fixed-length array of slot values. From a user point of view that has "
"several effects:"
msgstr ""
#: howto/descriptor.rst:1412
#: howto/descriptor.rst:1432
msgid ""
"1. Provides immediate detection of bugs due to misspelled attribute "
"assignments. Only attribute names specified in ``__slots__`` are allowed:"
msgstr ""
#: howto/descriptor.rst:1428
#: howto/descriptor.rst:1448
msgid ""
"2. Helps create immutable objects where descriptors manage access to private "
"attributes stored in ``__slots__``:"
msgstr ""
#: howto/descriptor.rst:1463
#: howto/descriptor.rst:1483
msgid ""
"3. Saves memory. On a 64-bit Linux build, an instance with two attributes "
"takes 48 bytes with ``__slots__`` and 152 bytes without. This `flyweight "
@ -1176,19 +1176,19 @@ msgid ""
"only matters when a large number of instances are going to be created."
msgstr ""
#: howto/descriptor.rst:1468
#: howto/descriptor.rst:1488
msgid ""
"4. Improves speed. Reading instance variables is 35% faster with "
"``__slots__`` (as measured with Python 3.10 on an Apple M1 processor)."
msgstr ""
#: howto/descriptor.rst:1471
#: howto/descriptor.rst:1491
msgid ""
"5. Blocks tools like :func:`functools.cached_property` which require an "
"instance dictionary to function correctly:"
msgstr ""
#: howto/descriptor.rst:1493
#: howto/descriptor.rst:1513
msgid ""
"It is not possible to create an exact drop-in pure Python version of "
"``__slots__`` because it requires direct access to C structures and control "
@ -1198,37 +1198,37 @@ msgid ""
"managed by member descriptors:"
msgstr ""
#: howto/descriptor.rst:1536
#: howto/descriptor.rst:1558
msgid ""
"The :meth:`type.__new__` method takes care of adding member objects to class "
"variables:"
msgstr ""
#: howto/descriptor.rst:1552
#: howto/descriptor.rst:1574
msgid ""
"The :meth:`object.__new__` method takes care of creating instances that have "
"slots instead of an instance dictionary. Here is a rough simulation in pure "
"Python:"
msgstr ""
#: howto/descriptor.rst:1587
#: howto/descriptor.rst:1609
msgid ""
"To use the simulation in a real class, just inherit from :class:`Object` and "
"set the :term:`metaclass` to :class:`Type`:"
msgstr ""
#: howto/descriptor.rst:1601
#: howto/descriptor.rst:1623
msgid ""
"At this point, the metaclass has loaded member objects for *x* and *y*::"
msgstr ""
#: howto/descriptor.rst:1622
#: howto/descriptor.rst:1644
msgid ""
"When instances are created, they have a ``slot_values`` list where the "
"attributes are stored:"
msgstr ""
#: howto/descriptor.rst:1634
#: howto/descriptor.rst:1656
msgid "Misspelled or unassigned attributes will raise an exception:"
msgstr ""

File diff suppressed because it is too large Load Diff

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-03-18 17:06+0100\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2021-11-06 19:31+0100\n"
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -141,9 +141,10 @@ msgstr ""
"métadonnées ::"
#: howto/instrumentation.rst:125
#, fuzzy
msgid ""
"The above metadata contains information for SystemTap describing how it can "
"patch strategically-placed machine code instructions to enable the tracing "
"patch strategically placed machine code instructions to enable the tracing "
"hooks used by a SystemTap script."
msgstr ""
"Les métadonnées ci-dessus contiennent des informations pour *SystemTap* "
@ -421,9 +422,10 @@ msgstr ""
"statiques ::"
#: howto/instrumentation.rst:412
#, fuzzy
msgid ""
"The following script uses the tapset above to provide a top-like view of all "
"running CPython code, showing the top 20 most frequently-entered bytecode "
"running CPython code, showing the top 20 most frequently entered bytecode "
"frames, each second, across the whole system:"
msgstr ""
"Le script suivant utilise le *tapset* ci-dessus pour fournir une vue de "

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-05-21 16:37+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2022-10-18 12:27+0200\n"
"Last-Translator: Nabil Bendafi <nabil@bendafi.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -1917,8 +1917,9 @@ msgstr ""
"meth:`~re.Match.groupdict` ::"
#: howto/regex.rst:952
#, fuzzy
msgid ""
"Named groups are handy because they let you use easily-remembered names, "
"Named groups are handy because they let you use easily remembered names, "
"instead of having to remember numbers. Here's an example RE from the :mod:"
"`imaplib` module::"
msgstr ""

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-03-18 17:06+0100\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2022-10-18 12:27+0200\n"
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -472,13 +472,22 @@ msgstr "Données binaires"
msgid ""
"It is perfectly possible to send binary data over a socket. The major "
"problem is that not all machines use the same formats for binary data. For "
"example, a Motorola chip will represent a 16 bit integer with the value 1 as "
"the two hex bytes 00 01. Intel and DEC, however, are byte-reversed - that "
"same 1 is 01 00. Socket libraries have calls for converting 16 and 32 bit "
"integers - ``ntohl, htonl, ntohs, htons`` where \"n\" means *network* and "
"\"h\" means *host*, \"s\" means *short* and \"l\" means *long*. Where "
"network order is host order, these do nothing, but where the machine is byte-"
"reversed, these swap the bytes around appropriately."
"example, `network byte order <https://en.wikipedia.org/wiki/"
"Endianness#Networking>`_ is big-endian, with the most significant byte "
"first, so a 16 bit integer with the value ``1`` would be the two hex bytes "
"``00 01``. However, most common processors (x86/AMD64, ARM, RISC-V), are "
"little-endian, with the least significant byte first - that same ``1`` would "
"be ``01 00``."
msgstr ""
#: howto/sockets.rst:262
#, fuzzy
msgid ""
"Socket libraries have calls for converting 16 and 32 bit integers - ``ntohl, "
"htonl, ntohs, htons`` where \"n\" means *network* and \"h\" means *host*, "
"\"s\" means *short* and \"l\" means *long*. Where network order is host "
"order, these do nothing, but where the machine is byte-reversed, these swap "
"the bytes around appropriately."
msgstr ""
"Il est parfaitement possible denvoyer des données binaires sur un "
"connecteur. Le gros problème est que toutes les machines nutilisent pas les "
@ -493,13 +502,15 @@ msgstr ""
"utilise lordre doctets inverse, ceux-ci échangent les octets de manière "
"appropriée."
#: howto/sockets.rst:264
#: howto/sockets.rst:268
#, fuzzy
msgid ""
"In these days of 32 bit machines, the ascii representation of binary data is "
"In these days of 64-bit machines, the ASCII representation of binary data is "
"frequently smaller than the binary representation. That's because a "
"surprising amount of the time, all those longs have the value 0, or maybe 1. "
"The string \"0\" would be two bytes, while binary is four. Of course, this "
"doesn't fit well with fixed-length messages. Decisions, decisions."
"surprising amount of the time, most integers have the value 0, or maybe 1. "
"The string ``\"0\"`` would be two bytes, while a full 64-bit integer would "
"be 8. Of course, this doesn't fit well with fixed-length messages. "
"Decisions, decisions."
msgstr ""
"De nos jours, avec les machines 32 bits, la représentation *ASCII* des "
"données binaires est souvent plus compacte que la représentation binaire. "
@ -509,11 +520,11 @@ msgstr ""
"très bien avec les messages de longueur fixe. Ah, les décisions, les "
"décisions…"
#: howto/sockets.rst:272
#: howto/sockets.rst:277
msgid "Disconnecting"
msgstr "Déconnexion"
#: howto/sockets.rst:274
#: howto/sockets.rst:279
msgid ""
"Strictly speaking, you're supposed to use ``shutdown`` on a socket before "
"you ``close`` it. The ``shutdown`` is an advisory to the socket at the "
@ -534,7 +545,7 @@ msgstr ""
"un ``close`` est équivalent à ``shutdown() ; close()``. Ainsi, dans la "
"plupart des situations, un ``shutdown`` explicite nest pas nécessaire."
#: howto/sockets.rst:282
#: howto/sockets.rst:287
msgid ""
"One way to use ``shutdown`` effectively is in an HTTP-like exchange. The "
"client sends a request and then does a ``shutdown(1)``. This tells the "
@ -551,7 +562,7 @@ msgstr ""
"serveur envoie une réponse. Si le ``send`` se termine avec succès, alors, en "
"effet, le client était encore en train de recevoir."
#: howto/sockets.rst:289
#: howto/sockets.rst:294
msgid ""
"Python takes the automatic shutdown a step further, and says that when a "
"socket is garbage collected, it will automatically do a ``close`` if it's "
@ -568,11 +579,11 @@ msgstr ""
"suspendu indéfiniment, pensant que vous êtes juste lent. Fermez vos "
"connecteurs quand vous avez terminé *sil vous plaît*."
#: howto/sockets.rst:297
#: howto/sockets.rst:302
msgid "When Sockets Die"
msgstr "Quand les connecteurs meurent"
#: howto/sockets.rst:299
#: howto/sockets.rst:304
msgid ""
"Probably the worst thing about using blocking sockets is what happens when "
"the other side comes down hard (without doing a ``close``). Your socket is "
@ -600,11 +611,11 @@ msgstr ""
"ressources. En d'autres termes, si vous parvenez à tuer le fil, tout votre "
"processus risque d'être foutu."
#: howto/sockets.rst:313
#: howto/sockets.rst:318
msgid "Non-blocking Sockets"
msgstr "Connecteurs non bloquants"
#: howto/sockets.rst:315
#: howto/sockets.rst:320
msgid ""
"If you've understood the preceding, you already know most of what you need "
"to know about the mechanics of using sockets. You'll still use the same "
@ -616,7 +627,7 @@ msgstr ""
"toujours les mêmes appels, de la même façon. Il ny que ça. Si vous le "
"faites bien, cest presque dans la poche."
#: howto/sockets.rst:320
#: howto/sockets.rst:325
msgid ""
"In Python, you use ``socket.setblocking(False)`` to make it non-blocking. In "
"C, it's more complex, (for one thing, you'll need to choose between the BSD "
@ -633,7 +644,7 @@ msgstr ""
"avoir créé le connecteur mais avant de lutiliser (en fait, si vous êtes "
"fou, vous pouvez alterner)."
#: howto/sockets.rst:327
#: howto/sockets.rst:332
msgid ""
"The major mechanical difference is that ``send``, ``recv``, ``connect`` and "
"``accept`` can return without having done anything. You have (of course) a "
@ -650,11 +661,11 @@ msgstr ""
"vampiriser le processeur. Alors, évitons les solutions vouées à léchec dès "
"le départ et faisons les choses correctement."
#: howto/sockets.rst:334
#: howto/sockets.rst:339
msgid "Use ``select``."
msgstr "Utilisation de ``select``."
#: howto/sockets.rst:336
#: howto/sockets.rst:341
msgid ""
"In C, coding ``select`` is fairly complex. In Python, it's a piece of cake, "
"but it's close enough to the C version that if you understand ``select`` in "
@ -664,7 +675,7 @@ msgstr ""
"mais c'est assez proche de la version C ; aussi, si vous comprenez "
"``select`` en Python, vous aurez peu de problèmes en C ::"
#: howto/sockets.rst:347
#: howto/sockets.rst:352
msgid ""
"You pass ``select`` three lists: the first contains all sockets that you "
"might want to try reading; the second all the sockets you might want to try "
@ -684,7 +695,7 @@ msgstr ""
"d'attente (disons une minute), à moins que vous n'ayez une bonne raison de "
"ne pas le faire."
#: howto/sockets.rst:355
#: howto/sockets.rst:360
msgid ""
"In return, you will get three lists. They contain the sockets that are "
"actually readable, writable and in error. Each of these lists is a subset "
@ -695,7 +706,7 @@ msgstr ""
"est un sous-ensemble (éventuellement vide) de la liste correspondante que "
"vous avez transmise."
#: howto/sockets.rst:359
#: howto/sockets.rst:364
msgid ""
"If a socket is in the output readable list, you can be as-close-to-certain-"
"as-we-ever-get-in-this-business that a ``recv`` on that socket will return "
@ -713,7 +724,7 @@ msgstr ""
"des connecteurs inscriptibles — cela signifie simplement que l'espace tampon "
"réseau sortant est disponible)."
#: howto/sockets.rst:366
#: howto/sockets.rst:371
msgid ""
"If you have a \"server\" socket, put it in the potential_readers list. If it "
"comes out in the readable list, your ``accept`` will (almost certainly) "
@ -730,7 +741,7 @@ msgstr ""
"dans la liste renvoyée des connecteurs sur lesquels vous pouvez écrire, vous "
"avez une bonne chance qu'il se soit connecté."
#: howto/sockets.rst:372
#: howto/sockets.rst:377
msgid ""
"Actually, ``select`` can be handy even with blocking sockets. It's one way "
"of determining whether you will block - the socket returns as readable when "
@ -744,7 +755,7 @@ msgstr ""
"Cependant, cela n'aide pas encore à déterminer si l'autre extrémité a "
"terminé, ou si elle est simplement occupée par autre chose."
#: howto/sockets.rst:377
#: howto/sockets.rst:382
msgid ""
"**Portability alert**: On Unix, ``select`` works both with the sockets and "
"files. Don't try this on Windows. On Windows, ``select`` works with sockets "

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2021-12-11 17:16+0100\n"
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -357,9 +357,10 @@ msgstr ""
"v=MijmeoH9LT4>`_ (9 minutes et 36 secondes)."
#: howto/unicode.rst:169
#, fuzzy
msgid ""
"To help understand the standard, Jukka Korpela has written `an introductory "
"guide <http://jkorpela.fi/unicode/guide.html>`_ to reading the Unicode "
"guide <https://jkorpela.fi/unicode/guide.html>`_ to reading the Unicode "
"character tables."
msgstr ""
"Pour aider à comprendre le standard, Jukka Korpela a écrit `un guide "
@ -835,8 +836,9 @@ msgstr ""
"sont :"
#: howto/unicode.rst:520
#, fuzzy
msgid ""
"`Processing Text Files in Python 3 <http://python-notes.curiousefficiency."
"`Processing Text Files in Python 3 <https://python-notes.curiousefficiency."
"org/en/latest/python3/text_file_processing.html>`_, by Nick Coghlan."
msgstr ""
"`Processing Text Files in Python 3 <http://python-notes.curiousefficiency."
@ -1238,8 +1240,9 @@ msgstr ""
"données et les réécrire."
#: howto/unicode.rst:737
#, fuzzy
msgid ""
"One section of `Mastering Python 3 Input/Output <http://pyvideo.org/"
"One section of `Mastering Python 3 Input/Output <https://pyvideo.org/"
"video/289/pycon-2010--mastering-python-3-i-o>`_, a PyCon 2010 talk by David "
"Beazley, discusses text processing and binary data handling."
msgstr ""
@ -1264,8 +1267,9 @@ msgstr ""
"diapositives ne couvrent que Python 2.x."
#: howto/unicode.rst:747
#, fuzzy
msgid ""
"`The Guts of Unicode in Python <http://pyvideo.org/video/1768/the-guts-of-"
"`The Guts of Unicode in Python <https://pyvideo.org/video/1768/the-guts-of-"
"unicode-in-python>`_ is a PyCon 2013 talk by Benjamin Peterson that "
"discusses the internal Unicode representation in Python 3.3."
msgstr ""

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-03-18 17:06+0100\n"
"POT-Creation-Date: 2022-10-18 15:46+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"
@ -24,14 +24,15 @@ msgid "Author"
msgstr "Auteur"
#: howto/urllib2.rst:7
msgid "`Michael Foord <http://www.voidspace.org.uk/python/index.shtml>`_"
msgid "`Michael Foord <https://agileabstractions.com/>`_"
msgstr ""
#: howto/urllib2.rst:11
msgid ""
"There is a French translation of an earlier revision of this HOWTO, "
"available at `urllib2 - Le Manuel manquant <http://www.voidspace.org.uk/"
"python/articles/urllib2_francais.shtml>`_."
"available at `urllib2 - Le Manuel manquant <https://web.archive.org/"
"web/20200910051922/http://www.voidspace.org.uk/python/articles/"
"urllib2_francais.shtml>`_."
msgstr ""
#: howto/urllib2.rst:18
@ -46,8 +47,8 @@ msgstr ""
#: howto/urllib2.rst:25
msgid ""
"`Basic Authentication <http://www.voidspace.org.uk/python/articles/"
"authentication.shtml>`_"
"`Basic Authentication <https://web.archive.org/web/20201215133350/http://www."
"voidspace.org.uk/python/articles/authentication.shtml>`_"
msgstr ""
#: howto/urllib2.rst:27
@ -355,7 +356,7 @@ msgstr ""
#: howto/urllib2.rst:413
msgid ""
"Typical headers include 'Content-length', 'Content-type', and so on. See the "
"`Quick Reference to HTTP Headers <http://jkorpela.fi/http.html>`_ for a "
"`Quick Reference to HTTP Headers <https://jkorpela.fi/http.html>`_ for a "
"useful listing of HTTP headers with brief explanations of their meaning and "
"use."
msgstr ""
@ -367,7 +368,7 @@ msgstr ""
#: howto/urllib2.rst:422
msgid ""
"When you fetch a URL you use an opener (an instance of the perhaps "
"confusingly-named :class:`urllib.request.OpenerDirector`). Normally we have "
"confusingly named :class:`urllib.request.OpenerDirector`). Normally we have "
"been using the default opener - via ``urlopen`` - but you can create custom "
"openers. Openers use handlers. All the \"heavy lifting\" is done by the "
"handlers. Each handler knows how to open URLs for a particular URL scheme "

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2021-12-11 17:18+0100\n"
"Last-Translator: Julien Palard <julien@palard.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -126,13 +126,14 @@ msgid "Distutils based source distributions"
msgstr "Distributions basées sur *distutils*"
#: install/index.rst:64
#, fuzzy
msgid ""
"If you download a module source distribution, you can tell pretty quickly if "
"it was packaged and distributed in the standard way, i.e. using the "
"Distutils. First, the distribution's name and version number will be "
"featured prominently in the name of the downloaded archive, e.g. :file:"
"`foo-1.0.tar.gz` or :file:`widget-0.9.7.zip`. Next, the archive will unpack "
"into a similarly-named directory: :file:`foo-1.0` or :file:`widget-0.9.7`. "
"into a similarly named directory: :file:`foo-1.0` or :file:`widget-0.9.7`. "
"Additionally, the distribution will contain a setup script :file:`setup.py`, "
"and a file named :file:`README.txt` or possibly just :file:`README`, which "
"should explain that building and installing the module distribution is a "
@ -1335,7 +1336,7 @@ msgstr "\\(5)"
#: install/index.rst:763
msgid ""
"On all platforms, the \"personal\" file can be temporarily disabled by "
"passing the `--no-user-cfg` option."
"passing the ``--no-user-cfg`` option."
msgstr ""
#: install/index.rst:769
@ -1721,8 +1722,8 @@ msgstr ""
#: install/index.rst:1065
msgid ""
"`Building Python modules on MS Windows platform with MinGW <http://old.zope."
"org/Members/als/tips/win32_mingw_modules>`_"
"`Building Python modules on MS Windows platform with MinGW <https://old.zope."
"dev/Members/als/tips/win32_mingw_modules>`_"
msgstr ""
#: install/index.rst:1066

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-10-21 15:04+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2022-02-23 18:50+0100\n"
"Last-Translator: Jules Lasne <jules.lasne@gmail.com>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -407,10 +407,11 @@ msgstr ""
"est ::"
#: installing/index.rst:216
#, fuzzy
msgid ""
"There are also additional resources for `installing pip. <https://packaging."
"python.org/tutorials/installing-packages/#install-pip-setuptools-and-"
"wheel>`__"
"python.org/en/latest/tutorials/installing-packages/#ensure-pip-setuptools-"
"and-wheel-are-up-to-date>`__"
msgstr ""
"Voir aussi `installing pip. <https://packaging.python.org/tutorials/"
"installing-packages/#install-pip-setuptools-and-wheel>`__"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-12-31 11:33+0100\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2021-04-29 13:57+0200\n"
"Last-Translator: Dimitri Merejkowsky <dimitri@dmerej.info>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -16,7 +16,8 @@ msgstr ""
"X-Generator: Poedit 2.4.1\n"
#: library/2to3.rst:4
msgid "2to3 - Automated Python 2 to 3 code translation"
#, fuzzy
msgid "2to3 --- Automated Python 2 to 3 code translation"
msgstr "*2to3* — Traduction automatique de code en Python 2 vers Python 3"
#: library/2to3.rst:8
@ -767,7 +768,8 @@ msgstr ""
"désactivé lorsque ``from future_builtins import zip`` apparaît."
#: library/2to3.rst:455
msgid ":mod:`lib2to3` - 2to3's library"
#, fuzzy
msgid ":mod:`lib2to3` --- 2to3's library"
msgstr ":mod:`lib2to3` — la bibliothèque de *2to3*"
#: library/2to3.rst:464

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-09-23 16:16+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2021-11-06 20:06+0100\n"
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -262,11 +262,12 @@ msgstr ""
"acquérir le verrou — c'est leur raison d'être)."
#: library/_thread.rst:164
#, fuzzy
msgid ""
"If the integer *waitflag* argument is present, the action depends on its "
"value: if it is zero, the lock is only acquired if it can be acquired "
"immediately without waiting, while if it is nonzero, the lock is acquired "
"unconditionally as above."
"If the *blocking* argument is present, the action depends on its value: if "
"it is False, the lock is only acquired if it can be acquired immediately "
"without waiting, while if it is True, the lock is acquired unconditionally "
"as above."
msgstr ""
"Si l'argument *waitflag*, un entier, est présent, l'action dépend de sa "
"valeur : si elle est de zéro, le verrou est seulement acquis s'il peut être "
@ -274,11 +275,12 @@ msgstr ""
"inconditionnellement comme ci-dessus."
#: library/_thread.rst:169
#, fuzzy
msgid ""
"If the floating-point *timeout* argument is present and positive, it "
"specifies the maximum wait time in seconds before returning. A negative "
"*timeout* argument specifies an unbounded wait. You cannot specify a "
"*timeout* if *waitflag* is zero."
"*timeout* if *blocking* is False."
msgstr ""
"Si l'argument *timeout*, en virgule flottante, est présent et positif, il "
"spécifie le temps d'attente maximum en secondes avant de renvoyer. Un "

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-05-21 16:37+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2022-05-30 11:00+0200\n"
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -1473,8 +1473,8 @@ msgid ""
"The ``help`` strings can include various format specifiers to avoid "
"repetition of things like the program name or the argument default_. The "
"available specifiers include the program name, ``%(prog)s`` and most keyword "
"arguments to :meth:`~ArgumentParser.add_argument`, e.g. ``%(default)s``, ``"
"%(type)s``, etc.::"
"arguments to :meth:`~ArgumentParser.add_argument`, e.g. ``%(default)s``, "
"``%(type)s``, etc.::"
msgstr ""
"La chaîne ``help`` peut contenir des spécificateurs de formatage afin "
"d'éviter la répétition de contenu tel que le nom du programme et la valeur "
@ -2608,8 +2608,8 @@ msgid ""
"with the standard Python syntax to use dictionaries to format strings, that "
"is, ``%(default)s`` and ``%(prog)s``."
msgstr ""
"Remplacer les chaînes avec des arguments de formatage implicite (tels que ``"
"%default`` ou ``%prog``) par la syntaxe standard de Python pour "
"Remplacer les chaînes avec des arguments de formatage implicite (tels que "
"``%default`` ou ``%prog``) par la syntaxe standard de Python pour "
"l'interpolation d'un dictionnaire dans les chaînes de formatage (c'est-à-"
"dire ``%(default)s`` et ``%(prog)s``) ;"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2019-10-31 12:47+0100\n"
"Last-Translator: Cléo Buck <cleo.buck@gmail.com>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -200,7 +200,7 @@ msgstr ""
#: library/array.rst:53
msgid ""
"``array('u')`` now uses ``wchar_t`` as C type instead of deprecated "
"``Py_UNICODE``. This change doesn't affect to its behavior because "
"``Py_UNICODE``. This change doesn't affect its behavior because "
"``Py_UNICODE`` is alias of ``wchar_t`` since Python 3.3."
msgstr ""

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2021-09-15 23:54+0200\n"
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -65,10 +65,11 @@ msgid "Node classes"
msgstr "Classes de nœuds"
#: library/ast.rst:46
#, fuzzy
msgid ""
"This is the base of all AST node classes. The actual node classes are "
"derived from the :file:`Parser/Python.asdl` file, which is reproduced :ref:"
"`below <abstract-grammar>`. They are defined in the :mod:`_ast` C module "
"`above <abstract-grammar>`. They are defined in the :mod:`_ast` C module "
"and re-exported in :mod:`ast`."
msgstr ""
"C'est la classe de base de toute classe de nœuds des d'arbres syntaxiques "
@ -1299,7 +1300,7 @@ msgid ""
"compilation step does."
msgstr ""
#: library/ast.rst:1973
#: library/ast.rst:1934
msgid ""
"It is possible to crash the Python interpreter with a sufficiently large/"
"complex string due to stack depth limitations in Python's AST compiler."
@ -1342,8 +1343,8 @@ msgstr ""
#: library/ast.rst:1962
#, fuzzy
msgid ""
"Safely evaluate an expression node or a string containing a Python literal "
"or container display. The string or node provided may only consist of the "
"Evaluate an expression node or a string containing only a Python literal or "
"container display. The string or node provided may only consist of the "
"following Python literal structures: strings, bytes, numbers, tuples, lists, "
"dicts, sets, booleans, ``None`` and ``Ellipsis``."
msgstr ""
@ -1354,11 +1355,11 @@ msgstr ""
"nombres, *n*-uplets, listes, dictionnaires, ensembles, booléens, et ``None``."
#: library/ast.rst:1967
#, fuzzy
msgid ""
"This can be used for safely evaluating strings containing Python values from "
"untrusted sources without the need to parse the values oneself. It is not "
"capable of evaluating arbitrarily complex expressions, for example involving "
"operators or indexing."
"This can be used for evaluating strings containing Python values without the "
"need to parse the values oneself. It is not capable of evaluating "
"arbitrarily complex expressions, for example involving operators or indexing."
msgstr ""
"Cela peut être utilisé pour évaluer de manière sûre la chaîne de caractères "
"contenant des valeurs Python de source non fiable sans avoir besoin "
@ -1366,25 +1367,47 @@ msgstr ""
"d'évaluer des expressions arbitrairement complexes, par exemple impliquant "
"des opérateurs ou de l'indiçage."
#: library/ast.rst:1977
#: library/ast.rst:1972
msgid ""
"This function had been documented as \"safe\" in the past without defining "
"what that meant. That was misleading. This is specifically designed not to "
"execute Python code, unlike the more general :func:`eval`. There is no "
"namespace, no name lookups, or ability to call out. But it is not free from "
"attack: A relatively small input can lead to memory exhaustion or to C stack "
"exhaustion, crashing the process. There is also the possibility for "
"excessive CPU consumption denial of service on some inputs. Calling it on "
"untrusted data is thus not recommended."
msgstr ""
#: library/ast.rst:1982
#, fuzzy
msgid ""
"It is possible to crash the Python interpreter due to stack depth "
"limitations in Python's AST compiler."
msgstr ""
"Il est possible de faire planter l'interpréteur Python avec des chaînes "
"suffisamment grandes ou complexes lors de la compilation d'un arbre "
"syntaxique en raison de la limitation de la profondeur de la pile d'appels."
#: library/ast.rst:1985
msgid ""
"It can raise :exc:`ValueError`, :exc:`TypeError`, :exc:`SyntaxError`, :exc:"
"`MemoryError` and :exc:`RecursionError` depending on the malformed input."
msgstr ""
#: library/ast.rst:1981
#: library/ast.rst:1989
msgid "Now allows bytes and set literals."
msgstr "accepte maintenant les octets et ensembles littéraux."
#: library/ast.rst:1984
#: library/ast.rst:1992
msgid "Now supports creating empty sets with ``'set()'``."
msgstr "accepte ``set()`` pour les ensembles vides."
#: library/ast.rst:1987
#: library/ast.rst:1995
msgid "For string inputs, leading spaces and tabs are now stripped."
msgstr ""
#: library/ast.rst:1993
#: library/ast.rst:2001
msgid ""
"Return the docstring of the given *node* (which must be a :class:"
"`FunctionDef`, :class:`AsyncFunctionDef`, :class:`ClassDef`, or :class:"
@ -1396,11 +1419,11 @@ msgstr ""
"n'a pas de *docstring*. Si *clean* est vrai, cette fonction nettoie "
"l'indentation de la *docstring* avec :func:`inspect.cleandoc`."
#: library/ast.rst:1999
#: library/ast.rst:2007
msgid ":class:`AsyncFunctionDef` is now supported."
msgstr ":class:`AsyncFunctionDef` est maintenant gérée."
#: library/ast.rst:2005
#: library/ast.rst:2013
msgid ""
"Get source code segment of the *source* that generated *node*. If some "
"location information (:attr:`lineno`, :attr:`end_lineno`, :attr:"
@ -1411,13 +1434,13 @@ msgstr ""
"`end_lineno`, :attr:`col_offset` et :attr:`end_col_offset`) n'est pas "
"rempli, cette fonction renvoie ``None``."
#: library/ast.rst:2009
#: library/ast.rst:2017
msgid ""
"If *padded* is ``True``, the first line of a multi-line statement will be "
"padded with spaces to match its original position."
msgstr ""
#: library/ast.rst:2017
#: library/ast.rst:2025
msgid ""
"When you compile a node tree with :func:`compile`, the compiler expects :"
"attr:`lineno` and :attr:`col_offset` attributes for every node that supports "
@ -1433,7 +1456,7 @@ msgstr ""
"comme les valeurs du nœud parent. Elle fonctionne récursivement en démarrant "
"de *node*."
#: library/ast.rst:2026
#: library/ast.rst:2034
msgid ""
"Increment the line number and end line number of each node in the tree "
"starting at *node* by *n*. This is useful to \"move code\" to a different "
@ -1443,7 +1466,7 @@ msgstr ""
"nœud dans l'arbre, en commençant par le nœud *node*. C'est utile pour "
 déplacer du code » à un endroit différent dans un fichier."
#: library/ast.rst:2033
#: library/ast.rst:2041
msgid ""
"Copy source location (:attr:`lineno`, :attr:`col_offset`, :attr:"
"`end_lineno`, and :attr:`end_col_offset`) from *old_node* to *new_node* if "
@ -1454,7 +1477,7 @@ msgstr ""
"*old_node* vers le nouveau nœud *new_node*, si possible, et renvoie "
"*new_node*."
#: library/ast.rst:2040
#: library/ast.rst:2048
msgid ""
"Yield a tuple of ``(fieldname, value)`` for each field in ``node._fields`` "
"that is present on *node*."
@ -1462,7 +1485,7 @@ msgstr ""
"Produit un *n*-uplet de couples ``(nom_du_champ, valeur)`` pour chaque champ "
"de ``node._fields`` qui est présent dans *node*."
#: library/ast.rst:2046
#: library/ast.rst:2054
msgid ""
"Yield all direct child nodes of *node*, that is, all fields that are nodes "
"and all items of fields that are lists of nodes."
@ -1471,7 +1494,7 @@ msgstr ""
"champs qui sont des nœuds et tous les éléments des champs qui sont des "
"listes de nœuds."
#: library/ast.rst:2052
#: library/ast.rst:2060
msgid ""
"Recursively yield all descendant nodes in the tree starting at *node* "
"(including *node* itself), in no specified order. This is useful if you "
@ -1482,7 +1505,7 @@ msgstr ""
"lorsque l'on souhaite modifier les nœuds sur place sans prêter attention au "
"contexte."
#: library/ast.rst:2059
#: library/ast.rst:2067
msgid ""
"A node visitor base class that walks the abstract syntax tree and calls a "
"visitor function for every node found. This function may return a value "
@ -1493,7 +1516,7 @@ msgstr ""
"Cette fonction peut renvoyer une valeur, qui est transmise par la méthode :"
"meth:`visit`."
#: library/ast.rst:2063
#: library/ast.rst:2071
msgid ""
"This class is meant to be subclassed, with the subclass adding visitor "
"methods."
@ -1501,7 +1524,7 @@ msgstr ""
"Cette classe est faite pour être dérivée, en ajoutant des méthodes de visite "
"à la sous-classe."
#: library/ast.rst:2068
#: library/ast.rst:2076
msgid ""
"Visit a node. The default implementation calls the method called :samp:"
"`self.visit_{classname}` where *classname* is the name of the node class, "
@ -1511,12 +1534,12 @@ msgstr ""
"visit_{classe}` où *classe* représente le nom de la classe du nœud, ou :meth:"
"`generic_visit` si cette méthode n'existe pas."
#: library/ast.rst:2074
#: library/ast.rst:2082
msgid "This visitor calls :meth:`visit` on all children of the node."
msgstr ""
"Le visiteur appelle la méthode :meth:`visit` de tous les enfants du nœud."
#: library/ast.rst:2076
#: library/ast.rst:2084
msgid ""
"Note that child nodes of nodes that have a custom visitor method won't be "
"visited unless the visitor calls :meth:`generic_visit` or visits them itself."
@ -1525,7 +1548,7 @@ msgstr ""
"sont pas visités à moins que le visiteur n'appelle la méthode :meth:"
"`generic_visit` ou ne les visite lui-même."
#: library/ast.rst:2080
#: library/ast.rst:2088
msgid ""
"Don't use the :class:`NodeVisitor` if you want to apply changes to nodes "
"during traversal. For this a special visitor exists (:class:"
@ -1535,7 +1558,7 @@ msgstr ""
"changements sur les nœuds lors du parcours. Pour cela, un visiteur spécial "
"existe (:class:`NodeTransformer`) qui permet les modifications."
#: library/ast.rst:2086
#: library/ast.rst:2094
msgid ""
"Methods :meth:`visit_Num`, :meth:`visit_Str`, :meth:`visit_Bytes`, :meth:"
"`visit_NameConstant` and :meth:`visit_Ellipsis` are deprecated now and will "
@ -1548,7 +1571,7 @@ msgstr ""
"une méthode :meth:`visit_Constant` pour traiter tous les nœuds qui "
"représentent des valeurs constantes."
#: library/ast.rst:2094
#: library/ast.rst:2102
msgid ""
"A :class:`NodeVisitor` subclass that walks the abstract syntax tree and "
"allows modification of nodes."
@ -1556,7 +1579,7 @@ msgstr ""
"Une sous-classe de :class:`NodeVisitor` qui traverse l'arbre syntaxique "
"abstrait et permet de modifier les nœuds."
#: library/ast.rst:2097
#: library/ast.rst:2105
msgid ""
"The :class:`NodeTransformer` will walk the AST and use the return value of "
"the visitor methods to replace or remove the old node. If the return value "
@ -1570,7 +1593,7 @@ msgstr ""
"est supprimé de sa position, sinon il est remplacé par cette valeur. Elle "
"peut être le nœud original, auquel cas il n'y a pas de remplacement."
#: library/ast.rst:2103
#: library/ast.rst:2111
msgid ""
"Here is an example transformer that rewrites all occurrences of name lookups "
"(``foo``) to ``data['foo']``::"
@ -1578,7 +1601,7 @@ msgstr ""
"Voici un exemple de transformation qui réécrit tous les accès à la valeur "
"d'une variable ``toto`` en ``data['toto']`` ::"
#: library/ast.rst:2115
#: library/ast.rst:2123
msgid ""
"Keep in mind that if the node you're operating on has child nodes you must "
"either transform the child nodes yourself or call the :meth:`generic_visit` "
@ -1588,7 +1611,7 @@ msgstr ""
"enfants, vous devez transformer également ces nœuds enfants vous-même ou "
"appeler d'abord la méthode :meth:`generic_visit` sur le nœud."
#: library/ast.rst:2119
#: library/ast.rst:2127
msgid ""
"For nodes that were part of a collection of statements (that applies to all "
"statement nodes), the visitor may also return a list of nodes rather than "
@ -1598,7 +1621,7 @@ msgstr ""
"instructions), le visiteur peut aussi renvoyer une liste des nœuds plutôt "
"qu'un seul nœud."
#: library/ast.rst:2123
#: library/ast.rst:2131
msgid ""
"If :class:`NodeTransformer` introduces new nodes (that weren't part of "
"original tree) without giving them location information (such as :attr:"
@ -1610,11 +1633,11 @@ msgstr ""
"consorts), il faut passer le nouvel arbre (ou la nouvelle partie de l'arbre) "
"à :func:`fix_missing_locations` pour calculer les positions manquantes :"
#: library/ast.rst:2131
#: library/ast.rst:2139
msgid "Usually you use the transformer like this::"
msgstr "Utilisation typique des transformations ::"
#: library/ast.rst:2138
#: library/ast.rst:2146
msgid ""
"Return a formatted dump of the tree in *node*. This is mainly useful for "
"debugging purposes. If *annotate_fields* is true (by default), the returned "
@ -1634,7 +1657,7 @@ msgstr ""
"masqués par défaut, mais on peut les inclure en mettant *include_attributes* "
"à ``True``."
#: library/ast.rst:2146
#: library/ast.rst:2154
msgid ""
"If *indent* is a non-negative integer or string, then the tree will be "
"pretty-printed with that indent level. An indent level of 0, negative, or "
@ -1651,15 +1674,15 @@ msgstr ""
"0 ou la chaîne vide, c'est-à-dire des retours à la ligne sans indentation. "
"Avec la valeur par défaut de ``None``, la sortie tient sur une seule ligne."
#: library/ast.rst:2153
#: library/ast.rst:2161
msgid "Added the *indent* option."
msgstr "ajout du paramètre *indent*."
#: library/ast.rst:2160
#: library/ast.rst:2168
msgid "Compiler Flags"
msgstr "Options du compilateur"
#: library/ast.rst:2162
#: library/ast.rst:2170
msgid ""
"The following flags may be passed to :func:`compile` in order to change "
"effects on the compilation of a program:"
@ -1667,7 +1690,7 @@ msgstr ""
"Les options suivantes sont prises en charge par la fonction :func:`compile`. "
"Elles permettent de modifier le comportement de la compilation."
#: library/ast.rst:2167
#: library/ast.rst:2175
msgid ""
"Enables support for top-level ``await``, ``async for``, ``async with`` and "
"async comprehensions."
@ -1675,14 +1698,14 @@ msgstr ""
"Active la reconnaissance de ``await``, ``async for``, ``async with`` et des "
"compréhensions asynchrones au niveau le plus haut."
#: library/ast.rst:2174
#: library/ast.rst:2182
msgid ""
"Generates and returns an abstract syntax tree instead of returning a "
"compiled code object."
msgstr ""
"Génère et renvoie un arbre syntaxique au lieu d'un objet de code compilé."
#: library/ast.rst:2179
#: library/ast.rst:2187
msgid ""
"Enables support for :pep:`484` and :pep:`526` style type comments (``# type: "
"<type>``, ``# type: ignore <stuff>``)."
@ -1690,11 +1713,11 @@ msgstr ""
"Ajoute la prise en charge des commentaires de types tels que définis dans "
"la :pep:`484` et la :pep:`526` (``# type: un_type`` et ``# type: ignore``)."
#: library/ast.rst:2188
#: library/ast.rst:2196
msgid "Command-Line Usage"
msgstr "Utilisation en ligne de commande"
#: library/ast.rst:2192
#: library/ast.rst:2200
msgid ""
"The :mod:`ast` module can be executed as a script from the command line. It "
"is as simple as:"
@ -1702,15 +1725,15 @@ msgstr ""
"Le module :mod:`ast` peut être exécuté en tant que script en ligne de "
"commande. C'est aussi simple que ceci :"
#: library/ast.rst:2199
#: library/ast.rst:2207
msgid "The following options are accepted:"
msgstr "Les options suivantes sont acceptées :"
#: library/ast.rst:2205
#: library/ast.rst:2213
msgid "Show the help message and exit."
msgstr "Affiche un message d'aide et quitte."
#: library/ast.rst:2210
#: library/ast.rst:2218
msgid ""
"Specify what kind of code must be compiled, like the *mode* argument in :"
"func:`parse`."
@ -1718,21 +1741,21 @@ msgstr ""
"Précise le type de code à compiler, comme l'argument *mode* de la fonction :"
"func:`parse`."
#: library/ast.rst:2215
#: library/ast.rst:2223
msgid "Don't parse type comments."
msgstr "Désactive la reconnaissance des commentaires de type."
#: library/ast.rst:2219
#: library/ast.rst:2227
msgid "Include attributes such as line numbers and column offsets."
msgstr ""
"Affiche les attributs comme les numéros de lignes et les décalages par "
"rapport aux débuts des lignes."
#: library/ast.rst:2224
#: library/ast.rst:2232
msgid "Indentation of nodes in AST (number of spaces)."
msgstr "Nombre d'espaces pour chaque niveau d'indentation dans la sortie."
#: library/ast.rst:2226
#: library/ast.rst:2234
msgid ""
"If :file:`infile` is specified its contents are parsed to AST and dumped to "
"stdout. Otherwise, the content is read from stdin."
@ -1741,7 +1764,7 @@ msgstr ""
"standard sinon. Le code source est transformé en un arbre syntaxique, qui "
"est affiché sur la sortie standard."
#: library/ast.rst:2232
#: library/ast.rst:2240
msgid ""
"`Green Tree Snakes <https://greentreesnakes.readthedocs.io/>`_, an external "
"documentation resource, has good details on working with Python ASTs."
@ -1750,7 +1773,7 @@ msgstr ""
"ressource documentaire externe, qui possède plus de détails pour travailler "
"avec des arbres syntaxiques Python."
#: library/ast.rst:2235
#: library/ast.rst:2243
msgid ""
"`ASTTokens <https://asttokens.readthedocs.io/en/latest/user-guide.html>`_ "
"annotates Python ASTs with the positions of tokens and text in the source "
@ -1762,9 +1785,10 @@ msgstr ""
"extraits de code source à partir desquels ils sont produits. Ceci est utile "
"pour les outils qui transforment du code source."
#: library/ast.rst:2240
#: library/ast.rst:2248
#, fuzzy
msgid ""
"`leoAst.py <http://leoeditor.com/appendices.html#leoast-py>`_ unifies the "
"`leoAst.py <https://leoeditor.com/appendices.html#leoast-py>`_ unifies the "
"token-based and parse-tree-based views of python programs by inserting two-"
"way links between tokens and ast nodes."
msgstr ""
@ -1772,7 +1796,7 @@ msgstr ""
"visions des lexèmes et des arbres syntaxiques en insérant des liens "
"bidirectionnels entre les deux."
#: library/ast.rst:2244
#: library/ast.rst:2252
msgid ""
"`LibCST <https://libcst.readthedocs.io/>`_ parses code as a Concrete Syntax "
"Tree that looks like an ast tree and keeps all formatting details. It's "
@ -1783,7 +1807,7 @@ msgstr ""
"abstraits et conservent tous les détails du formatage. Cette bibliothèque "
"est utile aux outils de réusinage et d'analyse de code."
#: library/ast.rst:2249
#: library/ast.rst:2257
msgid ""
"`Parso <https://parso.readthedocs.io>`_ is a Python parser that supports "
"error recovery and round-trip parsing for different Python versions (in "

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-05-21 16:37+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2018-10-06 17:04+0200\n"
"Last-Translator: Julien Palard <julien@palard.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -206,9 +206,10 @@ msgstr ""
"par exemple."
#: library/asynchat.rst:127
#, fuzzy
msgid ""
"Takes a producer object and adds it to the producer queue associated with "
"the channel. When all currently-pushed producers have been exhausted the "
"the channel. When all currently pushed producers have been exhausted the "
"channel will consume this producer's data by calling its :meth:`more` method "
"and send the data to the remote endpoint."
msgstr ""

View File

@ -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: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2022-06-06 21:29-0400\n"
"Last-Translator: Nicolas Haller <nicolas@haller.im>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -213,15 +213,16 @@ msgstr ""
"d'évènements se trouve."
#: library/asyncio-dev.rst:110
#, fuzzy
msgid ""
"There is currently no way to schedule coroutines or callbacks directly from "
"a different process (such as one started with :mod:`multiprocessing`). The :"
"ref:`Event Loop Methods <asyncio-event-loop>` section lists APIs that can "
"read from pipes and watch file descriptors without blocking the event loop. "
"In addition, asyncio's :ref:`Subprocess <asyncio-subprocess>` APIs provide a "
"way to start a process and communicate with it from the event loop. Lastly, "
"the aforementioned :meth:`loop.run_in_executor` method can also be used with "
"a :class:`concurrent.futures.ProcessPoolExecutor` to execute code in a "
"ref:`asyncio-event-loop-methods` section lists APIs that can read from pipes "
"and watch file descriptors without blocking the event loop. In addition, "
"asyncio's :ref:`Subprocess <asyncio-subprocess>` APIs provide a way to start "
"a process and communicate with it from the event loop. Lastly, the "
"aforementioned :meth:`loop.run_in_executor` method can also be used with a :"
"class:`concurrent.futures.ProcessPoolExecutor` to execute code in a "
"different process."
msgstr ""
"Il n'y a actuellement aucune façon de planifier des coroutines ou des "
@ -283,11 +284,18 @@ msgstr ""
"Le niveau de journalisation par défaut est :py:data:`logging.INFO` mais peut "
"être ajusté facilement ::"
#: library/asyncio-dev.rst:154
#: library/asyncio-dev.rst:151
msgid ""
"Network logging can block the event loop. It is recommended to use a "
"separate thread for handling logs or use non-blocking IO. For example, see :"
"ref:`blocking-handlers`."
msgstr ""
#: library/asyncio-dev.rst:159
msgid "Detect never-awaited coroutines"
msgstr "Détection des coroutines jamais attendues"
#: library/asyncio-dev.rst:156
#: library/asyncio-dev.rst:161
msgid ""
"When a coroutine function is called, but not awaited (e.g. ``coro()`` "
"instead of ``await coro()``) or the coroutine is not scheduled with :meth:"
@ -298,15 +306,15 @@ msgstr ""
"pas planifiée avec :meth:`asyncio.create_task`, *asyncio* émet un :exc:"
"`RuntimeWarning` ::"
#: library/asyncio-dev.rst:216
#: library/asyncio-dev.rst:221
msgid "Output::"
msgstr "Sortie ::"
#: library/asyncio-dev.rst:232
#: library/asyncio-dev.rst:237
msgid "Output in debug mode::"
msgstr "Affichage en mode débogage ::"
#: library/asyncio-dev.rst:189
#: library/asyncio-dev.rst:194
msgid ""
"The usual fix is to either await the coroutine or call the :meth:`asyncio."
"create_task` function::"
@ -314,11 +322,11 @@ msgstr ""
"La façon habituelle de régler ce problème est d'attendre (*await*) la "
"coroutine ou bien d'appeler la fonction :meth:`asyncio.create_task` ::"
#: library/asyncio-dev.rst:197
#: library/asyncio-dev.rst:202
msgid "Detect never-retrieved exceptions"
msgstr "Détection des exceptions jamais récupérées"
#: library/asyncio-dev.rst:199
#: library/asyncio-dev.rst:204
msgid ""
"If a :meth:`Future.set_exception` is called but the Future object is never "
"awaited on, the exception would never be propagated to the user code. In "
@ -330,11 +338,11 @@ msgstr ""
"utilisateur. Dans ce cas, *asyncio* écrit un message dans le journal lorsque "
"l'objet *Future* est récupéré par le ramasse-miette."
#: library/asyncio-dev.rst:204
#: library/asyncio-dev.rst:209
msgid "Example of an unhandled exception::"
msgstr "Exemple d'une exception non-gérée ::"
#: library/asyncio-dev.rst:227
#: library/asyncio-dev.rst:232
msgid ""
":ref:`Enable the debug mode <asyncio-debug-mode>` to get the traceback where "
"the task was created::"

File diff suppressed because it is too large Load Diff

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-03-18 17:06+0100\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2022-08-22 22:57-0400\n"
"Last-Translator: Nicolas Haller <nicolas@haller.im>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -67,9 +67,8 @@ msgid ""
"*obj* argument as is, if *obj* is a :class:`Future`, a :class:`Task`, or a "
"Future-like object (:func:`isfuture` is used for the test.)"
msgstr ""
"l'objet *obj* tel quel si c'est un objet :class:`Future`, :class:"
"`Task` ou se comportant comme un *Future*. :func:`isfuture` est utilisée "
"pour le test ;"
"l'objet *obj* tel quel si c'est un objet :class:`Future`, :class:`Task` ou "
"se comportant comme un *Future*. :func:`isfuture` est utilisée pour le test ;"
#: library/asyncio-future.rst:42
msgid ""
@ -77,18 +76,17 @@ msgid ""
"`iscoroutine` is used for the test); in this case the coroutine will be "
"scheduled by ``ensure_future()``."
msgstr ""
"un objet :class:`Task` encapsulant *obj* si ce dernier est une "
"coroutine (:func:`iscoroutine` est utilisée pour le test). Dans ce cas, "
"lexécution de la coroutine sera planifiée par ``ensure_future()`` ;"
"un objet :class:`Task` encapsulant *obj* si ce dernier est une coroutine (:"
"func:`iscoroutine` est utilisée pour le test). Dans ce cas, lexécution de "
"la coroutine sera planifiée par ``ensure_future()`` ;"
#: library/asyncio-future.rst:47
msgid ""
"a :class:`Task` object that would await on *obj*, if *obj* is an awaitable (:"
"func:`inspect.isawaitable` is used for the test.)"
msgstr ""
"un objet :class:`Task` qui attendra (*await*) *obj* si ce "
"dernier peut être attendu (*awaitable*). :func:`iscoroutine` est utilisée "
"pour le test."
"un objet :class:`Task` qui attendra (*await*) *obj* si ce dernier peut être "
"attendu (*awaitable*). :func:`iscoroutine` est utilisée pour le test."
#: library/asyncio-future.rst:50
msgid "If *obj* is neither of the above a :exc:`TypeError` is raised."
@ -105,9 +103,10 @@ msgstr ""
"pour créer des nouvelles tâches."
#: library/asyncio-future.rst:57
#, fuzzy
msgid ""
"Save a reference to the result of this function, to avoid a task "
"disappearing mid execution."
"disappearing mid-execution."
msgstr ""
"Gardez une référence au résultat de cette fonction pour éviter de voir une "
"tâche disparaitre au milieu de son exécution."
@ -155,16 +154,17 @@ msgstr ""
"n'est pas conçu pour pouvoir être utilisé par plusieurs fils d'exécution."
#: library/asyncio-future.rst:86
#, fuzzy
msgid ""
"Future is an :term:`awaitable` object. Coroutines can await on Future "
"objects until they either have a result or an exception set, or until they "
"are cancelled."
"are cancelled. A Future can be awaited multiple times and the result is same."
msgstr ""
"*Future* est un objet qui peut être attendu (:term:`awaitable`). Les "
"coroutines peuvent attendre les objets *Future* jusqu'à ce qu'ils renvoient "
"un résultat, ils lèvent une exception ou qu'ils soient annulés."
#: library/asyncio-future.rst:90
#: library/asyncio-future.rst:91
msgid ""
"Typically Futures are used to enable low-level callback-based code (e.g. in "
"protocols implemented using asyncio :ref:`transports <asyncio-transports-"
@ -175,7 +175,7 @@ msgstr ""
"utilisant *asyncio* :ref:`transports <asyncio-transports-protocols>`) "
"d'interagir avec du code haut niveau utilisant *async* et *await*."
#: library/asyncio-future.rst:95
#: library/asyncio-future.rst:96
msgid ""
"The rule of thumb is to never expose Future objects in user-facing APIs, and "
"the recommended way to create a Future object is to call :meth:`loop."
@ -188,11 +188,11 @@ msgstr ""
"permet aux implémentations alternatives de la boucle d'évènements d'utiliser "
"leur propre implémentation de l'objet *Future*."
#: library/asyncio-future.rst:101
#: library/asyncio-future.rst:102
msgid "Added support for the :mod:`contextvars` module."
msgstr "Ajout du support du module :mod:`contextvars`."
#: library/asyncio-future.rst:104
#: library/asyncio-future.rst:105
msgid ""
"Deprecation warning is emitted if *loop* is not specified and there is no "
"running event loop."
@ -200,11 +200,11 @@ msgstr ""
"Un ``DeprecationWarning`` est levé si *loop* n'est pas spécifié et s'il n'y "
"a pas de boucle d'évènements en cours d'exécution."
#: library/asyncio-future.rst:110
#: library/asyncio-future.rst:111
msgid "Return the result of the Future."
msgstr "Renvoie le résultat du *Future*."
#: library/asyncio-future.rst:112
#: library/asyncio-future.rst:113
msgid ""
"If the Future is *done* and has a result set by the :meth:`set_result` "
"method, the result value is returned."
@ -212,7 +212,7 @@ msgstr ""
"Si le *Future* est « terminé » et a un résultat défini par la méthode :meth:"
"`set_result`, ce résultat est renvoyé."
#: library/asyncio-future.rst:115
#: library/asyncio-future.rst:116
msgid ""
"If the Future is *done* and has an exception set by the :meth:"
"`set_exception` method, this method raises the exception."
@ -220,7 +220,7 @@ msgstr ""
"Si le *Future* est « terminé » et a une exception définie par la méthode :"
"meth:`set_exception`, cette méthode lève l'exception."
#: library/asyncio-future.rst:206
#: library/asyncio-future.rst:207
msgid ""
"If the Future has been *cancelled*, this method raises a :exc:"
"`CancelledError` exception."
@ -228,7 +228,7 @@ msgstr ""
"Si le *Future* a été *annulé*, cette méthode lève une exception :exc:"
"`CancelledError`."
#: library/asyncio-future.rst:121
#: library/asyncio-future.rst:122
msgid ""
"If the Future's result isn't yet available, this method raises a :exc:"
"`InvalidStateError` exception."
@ -236,25 +236,25 @@ msgstr ""
"Si le résultat de la tâche n'est pas encore disponible, cette méthode lève "
"une exception :exc:`InvalidStateError`."
#: library/asyncio-future.rst:126
#: library/asyncio-future.rst:127
msgid "Mark the Future as *done* and set its result."
msgstr "Marque le *Future* comme « terminé » et définit son résultat."
#: library/asyncio-future.rst:135
#: library/asyncio-future.rst:136
msgid ""
"Raises a :exc:`InvalidStateError` error if the Future is already *done*."
msgstr ""
"Lève une erreur :exc:`InvalidStateError` si le *Future* est déjà « terminé »."
#: library/asyncio-future.rst:133
#: library/asyncio-future.rst:134
msgid "Mark the Future as *done* and set an exception."
msgstr "Marque le *Future* comme « terminé » et définit une exception."
#: library/asyncio-future.rst:140
#: library/asyncio-future.rst:141
msgid "Return ``True`` if the Future is *done*."
msgstr "Renvoie ``True`` si le *Future* est « terminé »."
#: library/asyncio-future.rst:142
#: library/asyncio-future.rst:143
msgid ""
"A Future is *done* if it was *cancelled* or if it has a result or an "
"exception set with :meth:`set_result` or :meth:`set_exception` calls."
@ -263,11 +263,11 @@ msgstr ""
"exception a été définie par les méthodes :meth:`set_result` ou :meth:"
"`set_exception`."
#: library/asyncio-future.rst:148
#: library/asyncio-future.rst:149
msgid "Return ``True`` if the Future was *cancelled*."
msgstr "Renvoie ``True`` si le *Future* a été « annulé »."
#: library/asyncio-future.rst:150
#: library/asyncio-future.rst:151
msgid ""
"The method is usually used to check if a Future is not *cancelled* before "
"setting a result or an exception for it::"
@ -275,17 +275,17 @@ msgstr ""
"Cette méthode est habituellement utilisée pour vérifier qu'un *Future* n'est "
"pas « annulé » avant de définir un résultat ou une exception pour celui-ci ::"
#: library/asyncio-future.rst:158
#: library/asyncio-future.rst:159
msgid "Add a callback to be run when the Future is *done*."
msgstr ""
"Ajoute une fonction de rappel à exécuter lorsque le *Future* est « terminé »."
#: library/asyncio-future.rst:160
#: library/asyncio-future.rst:161
msgid "The *callback* is called with the Future object as its only argument."
msgstr ""
"L'argument *callback* est appelé avec l'objet *Future* comme seul argument."
#: library/asyncio-future.rst:163
#: library/asyncio-future.rst:164
msgid ""
"If the Future is already *done* when this method is called, the callback is "
"scheduled with :meth:`loop.call_soon`."
@ -294,7 +294,7 @@ msgstr ""
"l'exécution de la fonction de rappel est planifiée avec :meth:`loop."
"call_soon`."
#: library/asyncio-future.rst:166
#: library/asyncio-future.rst:167
msgid ""
"An optional keyword-only *context* argument allows specifying a custom :"
"class:`contextvars.Context` for the *callback* to run in. The current "
@ -304,7 +304,7 @@ msgstr ""
"`contextvars.Context` personnalisée dans laquelle la fonction de rappel "
"sexécutera. Le contexte actuel est utilisé si *context* n'est pas fourni."
#: library/asyncio-future.rst:170
#: library/asyncio-future.rst:171
msgid ""
":func:`functools.partial` can be used to pass parameters to the callback, e."
"g.::"
@ -312,18 +312,18 @@ msgstr ""
":func:`functools.partial` peut être utilisée pour passer des paramètres à la "
"fonction de rappel ::"
#: library/asyncio-future.rst:177
#: library/asyncio-future.rst:178
msgid ""
"The *context* keyword-only parameter was added. See :pep:`567` for more "
"details."
msgstr ""
"Ajout de l'argument nommé *context*. Voir :pep:`567` pour plus de détails."
#: library/asyncio-future.rst:183
#: library/asyncio-future.rst:184
msgid "Remove *callback* from the callbacks list."
msgstr "Retire *callback* de la liste de fonctions de rappel."
#: library/asyncio-future.rst:185
#: library/asyncio-future.rst:186
msgid ""
"Returns the number of callbacks removed, which is typically 1, unless a "
"callback was added more than once."
@ -331,11 +331,11 @@ msgstr ""
"Renvoie le nombre de fonctions de rappel retiré. La méthode renvoie "
"généralement 1, à moins que la fonction ait été ajoutée plus d'une fois."
#: library/asyncio-future.rst:190
#: library/asyncio-future.rst:191
msgid "Cancel the Future and schedule callbacks."
msgstr "Annule le *Future* et planifie l'exécution des fonctions de rappel."
#: library/asyncio-future.rst:192
#: library/asyncio-future.rst:193
msgid ""
"If the Future is already *done* or *cancelled*, return ``False``. Otherwise, "
"change the Future's state to *cancelled*, schedule the callbacks, and return "
@ -345,15 +345,15 @@ msgstr ""
"Autrement, change l'état du *Future* à « annulé », planifie l'exécution des "
"fonctions de rappel et renvoie ``True``."
#: library/asyncio-future.rst:196
#: library/asyncio-future.rst:197
msgid "Added the *msg* parameter."
msgstr "Ajout du paramètre *msg*."
#: library/asyncio-future.rst:201
#: library/asyncio-future.rst:202
msgid "Return the exception that was set on this Future."
msgstr "Renvoie l'exception définie pour ce *Future*."
#: library/asyncio-future.rst:203
#: library/asyncio-future.rst:204
msgid ""
"The exception (or ``None`` if no exception was set) is returned only if the "
"Future is *done*."
@ -361,7 +361,7 @@ msgstr ""
"L'exception, ou ``None`` si aucune exception n'a été définie, est renvoyé "
"seulement si le *Future* est « terminé »."
#: library/asyncio-future.rst:209
#: library/asyncio-future.rst:210
msgid ""
"If the Future isn't *done* yet, this method raises an :exc:"
"`InvalidStateError` exception."
@ -369,11 +369,11 @@ msgstr ""
"Si le *Future* n'est pas encore « terminé », cette méthode lève une "
"exception :exc:`InvalidStateError`."
#: library/asyncio-future.rst:214
#: library/asyncio-future.rst:215
msgid "Return the event loop the Future object is bound to."
msgstr "Renvoie la boucle d'évènements à laquelle le *Future* est attaché."
#: library/asyncio-future.rst:221
#: library/asyncio-future.rst:222
msgid ""
"This example creates a Future object, creates and schedules an asynchronous "
"Task to set result for the Future, and waits until the Future has a result::"
@ -382,7 +382,7 @@ msgstr ""
"tâche asynchrone qui définira le résultat du *Future* et attend jusqu'à ce "
"que le *Future* ait un résultat ::"
#: library/asyncio-future.rst:256
#: library/asyncio-future.rst:257
msgid ""
"The Future object was designed to mimic :class:`concurrent.futures.Future`. "
"Key differences include:"
@ -390,7 +390,7 @@ msgstr ""
"L'objet *Future* est conçu pour imiter la classe :class:`concurrent.futures."
"Future`. Les principales différences sont :"
#: library/asyncio-future.rst:259
#: library/asyncio-future.rst:260
msgid ""
"unlike asyncio Futures, :class:`concurrent.futures.Future` instances cannot "
"be awaited."
@ -398,7 +398,7 @@ msgstr ""
"contrairement au *Future asyncio*, les instances de :class:`concurrent."
"futures.Future` ne peuvent pas être attendues ;"
#: library/asyncio-future.rst:262
#: library/asyncio-future.rst:263
msgid ""
":meth:`asyncio.Future.result` and :meth:`asyncio.Future.exception` do not "
"accept the *timeout* argument."
@ -406,7 +406,7 @@ msgstr ""
":meth:`asyncio.Future.result` et :meth:`asyncio.Future.exception` "
"n'acceptent pas d'argument *timeout* ;"
#: library/asyncio-future.rst:265
#: library/asyncio-future.rst:266
msgid ""
":meth:`asyncio.Future.result` and :meth:`asyncio.Future.exception` raise an :"
"exc:`InvalidStateError` exception when the Future is not *done*."
@ -415,7 +415,7 @@ msgstr ""
"exception :exc:`InvalidStateError` lorsque le *Future* n'est pas "
 terminé » ;"
#: library/asyncio-future.rst:269
#: library/asyncio-future.rst:270
msgid ""
"Callbacks registered with :meth:`asyncio.Future.add_done_callback` are not "
"called immediately. They are scheduled with :meth:`loop.call_soon` instead."
@ -424,7 +424,7 @@ msgstr ""
"add_done_callback` ne sont pas exécutées immédiatement mais planifiées avec :"
"meth:`loop.call_soon` ;"
#: library/asyncio-future.rst:273
#: library/asyncio-future.rst:274
msgid ""
"asyncio Future is not compatible with the :func:`concurrent.futures.wait` "
"and :func:`concurrent.futures.as_completed` functions."
@ -432,7 +432,7 @@ msgstr ""
"les *Future asyncio* ne sont pas compatibles avec les fonctions :func:"
"`concurrent.futures.wait` et :func:`concurrent.futures.as_completed` ;"
#: library/asyncio-future.rst:277
#: library/asyncio-future.rst:278
msgid ""
":meth:`asyncio.Future.cancel` accepts an optional ``msg`` argument, but :"
"func:`concurrent.futures.cancel` does not."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+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"
@ -72,8 +72,8 @@ msgstr "Méthodes de la boucle d'évènements"
#: library/asyncio-llapi-index.rst:39
msgid ""
"See also the main documentation section about the :ref:`event loop methods "
"<asyncio-event-loop>`."
"See also the main documentation section about the :ref:`asyncio-event-loop-"
"methods`."
msgstr ""
#: library/asyncio-llapi-index.rst:42
@ -686,7 +686,7 @@ msgstr ""
msgid ":meth:`transport.abort() <WriteTransport.abort>`"
msgstr ""
#: library/asyncio-llapi-index.rst:348 library/asyncio-llapi-index.rst:370
#: library/asyncio-llapi-index.rst:348 library/asyncio-llapi-index.rst:374
msgid "Close the transport immediately."
msgstr ""
@ -697,226 +697,237 @@ msgid ""
msgstr ""
#: library/asyncio-llapi-index.rst:352
#, fuzzy
msgid "Return the current size of the output buffer."
msgstr "Renvoie le protocole courant."
#: library/asyncio-llapi-index.rst:354
msgid ""
":meth:`transport.get_write_buffer_limits() <WriteTransport."
"get_write_buffer_limits>`"
msgstr ""
#: library/asyncio-llapi-index.rst:356
msgid "Return high and low water marks for write flow control."
msgstr ""
#: library/asyncio-llapi-index.rst:354
#: library/asyncio-llapi-index.rst:358
msgid ""
":meth:`transport.set_write_buffer_limits() <WriteTransport."
"set_write_buffer_limits>`"
msgstr ""
#: library/asyncio-llapi-index.rst:356
#: library/asyncio-llapi-index.rst:360
msgid "Set new high and low water marks for write flow control."
msgstr ""
#: library/asyncio-llapi-index.rst:359
#: library/asyncio-llapi-index.rst:363
msgid "Transports returned by :meth:`loop.create_datagram_endpoint`:"
msgstr ""
#: library/asyncio-llapi-index.rst:361
#: library/asyncio-llapi-index.rst:365
msgid "Datagram Transports"
msgstr "Transports de datagrammes"
#: library/asyncio-llapi-index.rst:366
#: library/asyncio-llapi-index.rst:370
msgid ":meth:`transport.sendto() <DatagramTransport.sendto>`"
msgstr ""
#: library/asyncio-llapi-index.rst:367
#: library/asyncio-llapi-index.rst:371
msgid "Send data to the remote peer."
msgstr ""
#: library/asyncio-llapi-index.rst:369
#: library/asyncio-llapi-index.rst:373
msgid ":meth:`transport.abort() <DatagramTransport.abort>`"
msgstr ""
#: library/asyncio-llapi-index.rst:373
#: library/asyncio-llapi-index.rst:377
msgid ""
"Low-level transport abstraction over subprocesses. Returned by :meth:`loop."
"subprocess_exec` and :meth:`loop.subprocess_shell`:"
msgstr ""
#: library/asyncio-llapi-index.rst:377
#: library/asyncio-llapi-index.rst:381
msgid "Subprocess Transports"
msgstr "Transports vers des sous-processus"
#: library/asyncio-llapi-index.rst:382
#: library/asyncio-llapi-index.rst:386
msgid ":meth:`transport.get_pid() <SubprocessTransport.get_pid>`"
msgstr ""
#: library/asyncio-llapi-index.rst:383
#: library/asyncio-llapi-index.rst:387
msgid "Return the subprocess process id."
msgstr ""
#: library/asyncio-llapi-index.rst:385
#: library/asyncio-llapi-index.rst:389
msgid ""
":meth:`transport.get_pipe_transport() <SubprocessTransport."
"get_pipe_transport>`"
msgstr ""
#: library/asyncio-llapi-index.rst:387
#: library/asyncio-llapi-index.rst:391
msgid ""
"Return the transport for the requested communication pipe (*stdin*, "
"*stdout*, or *stderr*)."
msgstr ""
#: library/asyncio-llapi-index.rst:390
#: library/asyncio-llapi-index.rst:394
msgid ":meth:`transport.get_returncode() <SubprocessTransport.get_returncode>`"
msgstr ""
#: library/asyncio-llapi-index.rst:391
#: library/asyncio-llapi-index.rst:395
msgid "Return the subprocess return code."
msgstr ""
#: library/asyncio-llapi-index.rst:393
#: library/asyncio-llapi-index.rst:397
msgid ":meth:`transport.kill() <SubprocessTransport.kill>`"
msgstr ""
#: library/asyncio-llapi-index.rst:394
#: library/asyncio-llapi-index.rst:398
msgid "Kill the subprocess."
msgstr "Tue le sous-processus."
#: library/asyncio-llapi-index.rst:396
#: library/asyncio-llapi-index.rst:400
msgid ":meth:`transport.send_signal() <SubprocessTransport.send_signal>`"
msgstr ""
#: library/asyncio-llapi-index.rst:397
#: library/asyncio-llapi-index.rst:401
msgid "Send a signal to the subprocess."
msgstr ""
#: library/asyncio-llapi-index.rst:399
#: library/asyncio-llapi-index.rst:403
msgid ":meth:`transport.terminate() <SubprocessTransport.terminate>`"
msgstr ""
#: library/asyncio-llapi-index.rst:400
#: library/asyncio-llapi-index.rst:404
msgid "Stop the subprocess."
msgstr "Termine le sous-processus."
#: library/asyncio-llapi-index.rst:402
#: library/asyncio-llapi-index.rst:406
msgid ":meth:`transport.close() <SubprocessTransport.close>`"
msgstr ""
#: library/asyncio-llapi-index.rst:403
#: library/asyncio-llapi-index.rst:407
msgid "Kill the subprocess and close all pipes."
msgstr ""
#: library/asyncio-llapi-index.rst:407
#: library/asyncio-llapi-index.rst:411
msgid "Protocols"
msgstr ""
#: library/asyncio-llapi-index.rst:409
#: library/asyncio-llapi-index.rst:413
msgid "Protocol classes can implement the following **callback methods**:"
msgstr ""
#: library/asyncio-llapi-index.rst:415
#: library/asyncio-llapi-index.rst:419
msgid "``callback`` :meth:`connection_made() <BaseProtocol.connection_made>`"
msgstr ""
#: library/asyncio-llapi-index.rst:416
#: library/asyncio-llapi-index.rst:420
msgid "Called when a connection is made."
msgstr "Appelé lorsqu'une connexion est établie."
#: library/asyncio-llapi-index.rst:418
#: library/asyncio-llapi-index.rst:422
msgid "``callback`` :meth:`connection_lost() <BaseProtocol.connection_lost>`"
msgstr ""
#: library/asyncio-llapi-index.rst:419
#: library/asyncio-llapi-index.rst:423
msgid "Called when the connection is lost or closed."
msgstr "Appelé lorsqu'une connexion est perdue ou fermée."
#: library/asyncio-llapi-index.rst:421
#: library/asyncio-llapi-index.rst:425
msgid "``callback`` :meth:`pause_writing() <BaseProtocol.pause_writing>`"
msgstr ""
#: library/asyncio-llapi-index.rst:422
#: library/asyncio-llapi-index.rst:426
msgid "Called when the transport's buffer goes over the high water mark."
msgstr ""
#: library/asyncio-llapi-index.rst:424
#: library/asyncio-llapi-index.rst:428
msgid "``callback`` :meth:`resume_writing() <BaseProtocol.resume_writing>`"
msgstr ""
#: library/asyncio-llapi-index.rst:425
#: library/asyncio-llapi-index.rst:429
msgid "Called when the transport's buffer drains below the low water mark."
msgstr ""
#: library/asyncio-llapi-index.rst:428
#: library/asyncio-llapi-index.rst:432
msgid "Streaming Protocols (TCP, Unix Sockets, Pipes)"
msgstr ""
#: library/asyncio-llapi-index.rst:433
#: library/asyncio-llapi-index.rst:437
msgid "``callback`` :meth:`data_received() <Protocol.data_received>`"
msgstr ""
#: library/asyncio-llapi-index.rst:434
#: library/asyncio-llapi-index.rst:438
msgid "Called when some data is received."
msgstr ""
#: library/asyncio-llapi-index.rst:436
#: library/asyncio-llapi-index.rst:440
msgid "``callback`` :meth:`eof_received() <Protocol.eof_received>`"
msgstr ""
#: library/asyncio-llapi-index.rst:437 library/asyncio-llapi-index.rst:452
#: library/asyncio-llapi-index.rst:441 library/asyncio-llapi-index.rst:456
msgid "Called when an EOF is received."
msgstr ""
#: library/asyncio-llapi-index.rst:440
#: library/asyncio-llapi-index.rst:444
msgid "Buffered Streaming Protocols"
msgstr ""
#: library/asyncio-llapi-index.rst:445
#: library/asyncio-llapi-index.rst:449
msgid "``callback`` :meth:`get_buffer() <BufferedProtocol.get_buffer>`"
msgstr ""
#: library/asyncio-llapi-index.rst:446
#: library/asyncio-llapi-index.rst:450
msgid "Called to allocate a new receive buffer."
msgstr ""
#: library/asyncio-llapi-index.rst:448
#: library/asyncio-llapi-index.rst:452
msgid "``callback`` :meth:`buffer_updated() <BufferedProtocol.buffer_updated>`"
msgstr ""
#: library/asyncio-llapi-index.rst:449
#: library/asyncio-llapi-index.rst:453
msgid "Called when the buffer was updated with the received data."
msgstr ""
#: library/asyncio-llapi-index.rst:451
#: library/asyncio-llapi-index.rst:455
msgid "``callback`` :meth:`eof_received() <BufferedProtocol.eof_received>`"
msgstr ""
#: library/asyncio-llapi-index.rst:455
#: library/asyncio-llapi-index.rst:459
msgid "Datagram Protocols"
msgstr "Protocoles non-connectés"
#: library/asyncio-llapi-index.rst:460
#: library/asyncio-llapi-index.rst:464
msgid ""
"``callback`` :meth:`datagram_received() <DatagramProtocol.datagram_received>`"
msgstr ""
#: library/asyncio-llapi-index.rst:462
#: library/asyncio-llapi-index.rst:466
msgid "Called when a datagram is received."
msgstr ""
#: library/asyncio-llapi-index.rst:464
#: library/asyncio-llapi-index.rst:468
msgid "``callback`` :meth:`error_received() <DatagramProtocol.error_received>`"
msgstr ""
#: library/asyncio-llapi-index.rst:465
#: library/asyncio-llapi-index.rst:469
msgid ""
"Called when a previous send or receive operation raises an :class:`OSError`."
msgstr ""
#: library/asyncio-llapi-index.rst:469
#: library/asyncio-llapi-index.rst:473
msgid "Subprocess Protocols"
msgstr "Protocoles liés aux sous-processus"
#: library/asyncio-llapi-index.rst:474
#: library/asyncio-llapi-index.rst:478
msgid ""
"``callback`` :meth:`pipe_data_received() <SubprocessProtocol."
"pipe_data_received>`"
msgstr ""
#: library/asyncio-llapi-index.rst:476
#: library/asyncio-llapi-index.rst:480
#, fuzzy
msgid ""
"Called when the child process writes data into its *stdout* or *stderr* pipe."
@ -924,63 +935,63 @@ msgstr ""
"Appelé lorsqu'un processus enfant écrit sur sa sortie d'erreur ou sa sortie "
"standard."
#: library/asyncio-llapi-index.rst:479
#: library/asyncio-llapi-index.rst:483
msgid ""
"``callback`` :meth:`pipe_connection_lost() <SubprocessProtocol."
"pipe_connection_lost>`"
msgstr ""
#: library/asyncio-llapi-index.rst:481
#: library/asyncio-llapi-index.rst:485
msgid ""
"Called when one of the pipes communicating with the child process is closed."
msgstr ""
"Appelé lorsqu'une des *pipe*\\ s de communication avec un sous-processus est "
"fermée."
#: library/asyncio-llapi-index.rst:484
#: library/asyncio-llapi-index.rst:488
msgid ""
"``callback`` :meth:`process_exited() <SubprocessProtocol.process_exited>`"
msgstr ""
#: library/asyncio-llapi-index.rst:486
#: library/asyncio-llapi-index.rst:490
msgid "Called when the child process has exited."
msgstr "Appelé lorsqu'un processus enfant se termine."
#: library/asyncio-llapi-index.rst:490
#: library/asyncio-llapi-index.rst:494
msgid "Event Loop Policies"
msgstr ""
#: library/asyncio-llapi-index.rst:492
#: library/asyncio-llapi-index.rst:496
msgid ""
"Policies is a low-level mechanism to alter the behavior of functions like :"
"func:`asyncio.get_event_loop`. See also the main :ref:`policies section "
"<asyncio-policies>` for more details."
msgstr ""
#: library/asyncio-llapi-index.rst:498
#: library/asyncio-llapi-index.rst:502
msgid "Accessing Policies"
msgstr ""
#: library/asyncio-llapi-index.rst:503
#: library/asyncio-llapi-index.rst:507
msgid ":meth:`asyncio.get_event_loop_policy`"
msgstr ":meth:`asyncio.get_event_loop_policy`"
#: library/asyncio-llapi-index.rst:504
#: library/asyncio-llapi-index.rst:508
msgid "Return the current process-wide policy."
msgstr "Renvoie la stratégie actuelle à l'échelle du processus."
#: library/asyncio-llapi-index.rst:506
#: library/asyncio-llapi-index.rst:510
msgid ":meth:`asyncio.set_event_loop_policy`"
msgstr ":meth:`asyncio.set_event_loop_policy`"
#: library/asyncio-llapi-index.rst:507
#: library/asyncio-llapi-index.rst:511
msgid "Set a new process-wide policy."
msgstr ""
#: library/asyncio-llapi-index.rst:509
#: library/asyncio-llapi-index.rst:513
msgid ":class:`AbstractEventLoopPolicy`"
msgstr ":class:`AbstractEventLoopPolicy`"
#: library/asyncio-llapi-index.rst:510
#: library/asyncio-llapi-index.rst:514
msgid "Base class for policy objects."
msgstr ""

View File

@ -5,7 +5,7 @@ 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: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2019-11-17 01:26+0100\n"
"Last-Translator: Mathieu Dupuy <deronnax@gmail.com>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -21,35 +21,36 @@ msgstr "Stratégies"
#: library/asyncio-policy.rst:10
msgid ""
"An event loop policy is a global per-process object that controls the "
"management of the event loop. Each event loop has a default policy, which "
"can be changed and customized using the policy API."
"An event loop policy is a global object used to get and set the current :ref:"
"`event loop <asyncio-event-loop>`, as well as create new event loops. The "
"default policy can be :ref:`replaced <asyncio-policy-get-set>` with :ref:"
"`built-in alternatives <asyncio-policy-builtin>` to use different event loop "
"implementations, or substituted by a :ref:`custom policy <asyncio-custom-"
"policies>` that can override these behaviors."
msgstr ""
"Une stratégie de boucle d'événements est un objet global, pour chaque "
"processus, qui contrôle la gestion de la boucle d'événement. Chaque boucle "
"d'événement a une stratégie par défaut, qui peut être modifiée et "
"personnalisée à l'aide de l'API de la stratégie."
#: library/asyncio-policy.rst:14
#: library/asyncio-policy.rst:19
#, fuzzy
msgid ""
"A policy defines the notion of *context* and manages a separate event loop "
"per context. The default policy defines *context* to be the current thread."
"The :ref:`policy object <asyncio-policy-objects>` gets and sets a separate "
"event loop per *context*. This is per-thread by default, though custom "
"policies could define *context* differently."
msgstr ""
"Une stratégie définit la notion de *contexte* et gère une boucle d'événement "
"distincte par contexte. La stratégie par défaut définit le *contexte* comme "
"étant le fil d'exécution actuel."
#: library/asyncio-policy.rst:18
#: library/asyncio-policy.rst:24
#, fuzzy
msgid ""
"By using a custom event loop policy, the behavior of :func:"
"`get_event_loop`, :func:`set_event_loop`, and :func:`new_event_loop` "
"functions can be customized."
"Custom event loop policies can control the behavior of :func:"
"`get_event_loop`, :func:`set_event_loop`, and :func:`new_event_loop`."
msgstr ""
"En utilisant une stratégie de boucle d'événement personnalisée, le "
"comportement des fonctions :func:`get_event_loop`, :func:`set_event_loop` "
"et :func:`new_event_loop` peut être personnalisé."
#: library/asyncio-policy.rst:22
#: library/asyncio-policy.rst:27
msgid ""
"Policy objects should implement the APIs defined in the :class:"
"`AbstractEventLoopPolicy` abstract base class."
@ -57,11 +58,11 @@ msgstr ""
"Les objets de stratégie doivent implémenter les API définies dans la classe "
"de base abstraite :class:`AbstractEventLoopPolicy`."
#: library/asyncio-policy.rst:27
#: library/asyncio-policy.rst:34
msgid "Getting and Setting the Policy"
msgstr "Obtenir et définir la stratégie"
#: library/asyncio-policy.rst:29
#: library/asyncio-policy.rst:36
msgid ""
"The following functions can be used to get and set the policy for the "
"current process:"
@ -69,39 +70,39 @@ msgstr ""
"Les fonctions suivantes peuvent être utilisées pour obtenir et définir la "
"stratégie du processus en cours :"
#: library/asyncio-policy.rst:34
#: library/asyncio-policy.rst:41
msgid "Return the current process-wide policy."
msgstr "Renvoie la stratégie actuelle à l'échelle du processus."
#: library/asyncio-policy.rst:38
#: library/asyncio-policy.rst:45
msgid "Set the current process-wide policy to *policy*."
msgstr ""
"Définit la stratégie actuelle sur l'ensemble du processus sur *policy*."
#: library/asyncio-policy.rst:40
#: library/asyncio-policy.rst:47
msgid "If *policy* is set to ``None``, the default policy is restored."
msgstr ""
"Si *policy* est définie sur ``None``, la stratégie par défaut est restaurée."
#: library/asyncio-policy.rst:44
#: library/asyncio-policy.rst:53
msgid "Policy Objects"
msgstr "Sujets de stratégie"
#: library/asyncio-policy.rst:46
#: library/asyncio-policy.rst:55
msgid "The abstract event loop policy base class is defined as follows:"
msgstr ""
"La classe de base abstraite de la stratégie de boucle d'événements est "
"définie comme suit:"
#: library/asyncio-policy.rst:50
#: library/asyncio-policy.rst:59
msgid "An abstract base class for asyncio policies."
msgstr "Une classe de base abstraite pour les stratégies *asyncio*."
#: library/asyncio-policy.rst:54
#: library/asyncio-policy.rst:63
msgid "Get the event loop for the current context."
msgstr "Récupère la boucle d'évènements pour le contexte actuel."
#: library/asyncio-policy.rst:56
#: library/asyncio-policy.rst:65
msgid ""
"Return an event loop object implementing the :class:`AbstractEventLoop` "
"interface."
@ -109,23 +110,23 @@ msgstr ""
"Renvoie un objet de boucle d'événements en implémentant l'interface :class:"
"`AbstractEventLoop`."
#: library/asyncio-policy.rst:71
#: library/asyncio-policy.rst:80
msgid "This method should never return ``None``."
msgstr "Cette méthode ne devrait jamais renvoyer ``None``."
#: library/asyncio-policy.rst:65
#: library/asyncio-policy.rst:74
msgid "Set the event loop for the current context to *loop*."
msgstr "Définit la boucle d'événements du contexte actuel sur *loop*."
#: library/asyncio-policy.rst:69
#: library/asyncio-policy.rst:78
msgid "Create and return a new event loop object."
msgstr "Crée et renvoie un nouvel objet de boucle d'événements."
#: library/asyncio-policy.rst:75
#: library/asyncio-policy.rst:84
msgid "Get a child process watcher object."
msgstr "Récupère un objet observateur du processus enfant."
#: library/asyncio-policy.rst:77
#: library/asyncio-policy.rst:86
msgid ""
"Return a watcher object implementing the :class:`AbstractChildWatcher` "
"interface."
@ -133,19 +134,19 @@ msgstr ""
"Renvoie un objet observateur implémentant l'interface :class:"
"`AbstractChildWatcher`."
#: library/asyncio-policy.rst:86
#: library/asyncio-policy.rst:95
msgid "This function is Unix specific."
msgstr "Cette fonction est spécifique à Unix."
#: library/asyncio-policy.rst:84
#: library/asyncio-policy.rst:93
msgid "Set the current child process watcher to *watcher*."
msgstr "Définit l'observateur du processus enfant actuel à *watcher*."
#: library/asyncio-policy.rst:89
#: library/asyncio-policy.rst:100
msgid "asyncio ships with the following built-in policies:"
msgstr "*asyncio* est livré avec les stratégies intégrées suivantes :"
#: library/asyncio-policy.rst:94
#: library/asyncio-policy.rst:105
msgid ""
"The default asyncio policy. Uses :class:`SelectorEventLoop` on Unix and :"
"class:`ProactorEventLoop` on Windows."
@ -153,7 +154,7 @@ msgstr ""
"La stratégie *asyncio* par défaut. Utilise :class:`SelectorEventLoop` sur "
"les plates-formes Unix et :class:`ProactorEventLoop` sur Windows."
#: library/asyncio-policy.rst:97
#: library/asyncio-policy.rst:108
msgid ""
"There is no need to install the default policy manually. asyncio is "
"configured to use the default policy automatically."
@ -162,11 +163,11 @@ msgstr ""
"*asyncio* est configuré pour utiliser automatiquement la stratégie par "
"défaut."
#: library/asyncio-policy.rst:102
#: library/asyncio-policy.rst:113
msgid "On Windows, :class:`ProactorEventLoop` is now used by default."
msgstr ""
#: library/asyncio-policy.rst:107
#: library/asyncio-policy.rst:118
msgid ""
"An alternative event loop policy that uses the :class:`SelectorEventLoop` "
"event loop implementation."
@ -174,11 +175,11 @@ msgstr ""
"Stratégie de boucle d'événements alternative utilisant l'implémentation de "
"la boucle d'événements :class:`ProactorEventLoop`."
#: library/asyncio-policy.rst:118
#: library/asyncio-policy.rst:129
msgid ":ref:`Availability <availability>`: Windows."
msgstr ":ref:`Disponibilité <availability>` : Windows."
#: library/asyncio-policy.rst:115
#: library/asyncio-policy.rst:126
#, fuzzy
msgid ""
"An alternative event loop policy that uses the :class:`ProactorEventLoop` "
@ -187,11 +188,11 @@ msgstr ""
"Stratégie de boucle d'événements alternative utilisant l'implémentation de "
"la boucle d'événements :class:`ProactorEventLoop`."
#: library/asyncio-policy.rst:123
#: library/asyncio-policy.rst:135
msgid "Process Watchers"
msgstr "Observateurs de processus"
#: library/asyncio-policy.rst:125
#: library/asyncio-policy.rst:137
msgid ""
"A process watcher allows customization of how an event loop monitors child "
"processes on Unix. Specifically, the event loop needs to know when a child "
@ -202,7 +203,7 @@ msgstr ""
"précisément, la boucle d'événements a besoin de savoir quand un processus "
"enfant s'est terminé."
#: library/asyncio-policy.rst:129
#: library/asyncio-policy.rst:141
msgid ""
"In asyncio, child processes are created with :func:`create_subprocess_exec` "
"and :meth:`loop.subprocess_exec` functions."
@ -210,7 +211,7 @@ msgstr ""
"Dans *asyncio*, les processus enfants sont créés avec les fonctions :func:"
"`create_subprocess_exec` et :meth:`loop.subprocess_exec`."
#: library/asyncio-policy.rst:133
#: library/asyncio-policy.rst:145
#, fuzzy
msgid ""
"asyncio defines the :class:`AbstractChildWatcher` abstract base class, which "
@ -224,7 +225,7 @@ msgstr ""
"implémentations différentes : :class:`SafeChildWatcher` (configurée pour "
"être utilisé par défaut) et :class:`FastChildWatcher`."
#: library/asyncio-policy.rst:139
#: library/asyncio-policy.rst:151
msgid ""
"See also the :ref:`Subprocess and Threads <asyncio-subprocess-threads>` "
"section."
@ -232,7 +233,7 @@ msgstr ""
"Voir aussi la section :ref:`sous-processus et fils d'exécution <asyncio-"
"subprocess-threads>`."
#: library/asyncio-policy.rst:142
#: library/asyncio-policy.rst:154
msgid ""
"The following two functions can be used to customize the child process "
"watcher implementation used by the asyncio event loop:"
@ -241,11 +242,11 @@ msgstr ""
"l'implémentation de l'observateur de processus enfant utilisé par la boucle "
"d'événements *asyncio* :"
#: library/asyncio-policy.rst:147
#: library/asyncio-policy.rst:159
msgid "Return the current child watcher for the current policy."
msgstr "Renvoie l'observateur enfant actuel pour la stratégie actuelle."
#: library/asyncio-policy.rst:151
#: library/asyncio-policy.rst:163
msgid ""
"Set the current child watcher to *watcher* for the current policy. "
"*watcher* must implement methods defined in the :class:"
@ -255,7 +256,7 @@ msgstr ""
"*watcher* doit implémenter les méthodes définies dans la classe de base :"
"class:`AbstractChildWatcher`."
#: library/asyncio-policy.rst:156
#: library/asyncio-policy.rst:168
msgid ""
"Third-party event loops implementations might not support custom child "
"watchers. For such event loops, using :func:`set_child_watcher` might be "
@ -266,11 +267,11 @@ msgstr ""
"d'événements, utiliser :func:`set_child_watcher` pourrait être interdit ou "
"n'avoir aucun effet."
#: library/asyncio-policy.rst:164
#: library/asyncio-policy.rst:176
msgid "Register a new child handler."
msgstr "Enregistre un nouveau gestionnaire."
#: library/asyncio-policy.rst:166
#: library/asyncio-policy.rst:178
msgid ""
"Arrange for ``callback(pid, returncode, *args)`` to be called when a process "
"with PID equal to *pid* terminates. Specifying another callback for the "
@ -280,17 +281,17 @@ msgstr ""
"processus dont le PID est égal à *pid* se termine. La spécification d'un "
"autre rappel pour le même processus remplace le gestionnaire précédent."
#: library/asyncio-policy.rst:171
#: library/asyncio-policy.rst:183
msgid "The *callback* callable must be thread-safe."
msgstr ""
"L'appelable *callback* doit être compatible avec les programmes à fils "
"d'exécution multiples."
#: library/asyncio-policy.rst:175
#: library/asyncio-policy.rst:187
msgid "Removes the handler for process with PID equal to *pid*."
msgstr "Supprime le gestionnaire de processus avec un PID égal à *pid*."
#: library/asyncio-policy.rst:177
#: library/asyncio-policy.rst:189
msgid ""
"The function returns ``True`` if the handler was successfully removed, "
"``False`` if there was nothing to remove."
@ -298,11 +299,11 @@ msgstr ""
"La fonction renvoie ``True`` si le gestionnaire a été supprimé avec succès, "
"``False`` s'il n'y a rien à supprimer."
#: library/asyncio-policy.rst:182
#: library/asyncio-policy.rst:194
msgid "Attach the watcher to an event loop."
msgstr "Attache l'observateur à une boucle d'événement."
#: library/asyncio-policy.rst:184
#: library/asyncio-policy.rst:196
msgid ""
"If the watcher was previously attached to an event loop, then it is first "
"detached before attaching to the new loop."
@ -310,25 +311,25 @@ msgstr ""
"Si l'observateur était précédemment attaché à une boucle d'événements, il "
"est d'abord détaché avant d'être rattaché à la nouvelle boucle."
#: library/asyncio-policy.rst:187
#: library/asyncio-policy.rst:199
msgid "Note: loop may be ``None``."
msgstr "Remarque : la boucle peut être ``None``."
#: library/asyncio-policy.rst:191
#: library/asyncio-policy.rst:203
msgid "Return ``True`` if the watcher is ready to use."
msgstr ""
#: library/asyncio-policy.rst:193
#: library/asyncio-policy.rst:205
msgid ""
"Spawning a subprocess with *inactive* current child watcher raises :exc:"
"`RuntimeError`."
msgstr ""
#: library/asyncio-policy.rst:200
#: library/asyncio-policy.rst:212
msgid "Close the watcher."
msgstr "Ferme l'observateur."
#: library/asyncio-policy.rst:202
#: library/asyncio-policy.rst:214
msgid ""
"This method has to be called to ensure that underlying resources are cleaned-"
"up."
@ -336,7 +337,7 @@ msgstr ""
"Cette méthode doit être appelée pour s'assurer que les ressources sous-"
"jacentes sont nettoyées."
#: library/asyncio-policy.rst:207
#: library/asyncio-policy.rst:219
#, fuzzy
msgid ""
"This implementation starts a new waiting thread for every subprocess spawn."
@ -345,7 +346,7 @@ msgstr ""
"générer des processus en interrogeant chaque processus explicitement par un "
"signal :py:data:`SIGCHLD`."
#: library/asyncio-policy.rst:209
#: library/asyncio-policy.rst:221
#, fuzzy
msgid ""
"It works reliably even when the asyncio event loop is run in a non-main OS "
@ -355,7 +356,7 @@ msgstr ""
"de la manipulation d'un grand nombre de processus (*O(n)* à chaque fois que "
"un :py:data:`SIGCHLD` est reçu)."
#: library/asyncio-policy.rst:211
#: library/asyncio-policy.rst:223
#, fuzzy
msgid ""
"There is no noticeable overhead when handling a big number of children "
@ -365,50 +366,50 @@ msgstr ""
"Il n'y a pas de surcharge visible lors de la manipulation d'un grand nombre "
"d'enfants (*O(1)* à chaque fois qu'un enfant se termine)."
#: library/asyncio-policy.rst:214
#: library/asyncio-policy.rst:226
msgid "This watcher is used by default."
msgstr ""
#: library/asyncio-policy.rst:220
#: library/asyncio-policy.rst:232
msgid ""
"This implementation registers a :py:data:`SIGCHLD` signal handler on "
"instantiation. That can break third-party code that installs a custom "
"handler for :py:data:`SIGCHLD` signal."
msgstr ""
#: library/asyncio-policy.rst:242
#: library/asyncio-policy.rst:254
msgid ""
"The watcher avoids disrupting other code spawning processes by polling every "
"process explicitly on a :py:data:`SIGCHLD` signal."
msgstr ""
#: library/asyncio-policy.rst:227
#: library/asyncio-policy.rst:239
msgid ""
"There is no limitation for running subprocesses from different threads once "
"the watcher is installed."
msgstr ""
#: library/asyncio-policy.rst:230
#: library/asyncio-policy.rst:242
msgid ""
"The solution is safe but it has a significant overhead when handling a big "
"number of processes (*O(n)* each time a :py:data:`SIGCHLD` is received)."
msgstr ""
#: library/asyncio-policy.rst:238
#: library/asyncio-policy.rst:250
msgid ""
"This implementation uses active event loop from the main thread to handle :"
"py:data:`SIGCHLD` signal. If the main thread has no running event loop "
"another thread cannot spawn a subprocess (:exc:`RuntimeError` is raised)."
msgstr ""
#: library/asyncio-policy.rst:245
#: library/asyncio-policy.rst:257
msgid ""
"This solution is as safe as :class:`MultiLoopChildWatcher` and has the same "
"*O(N)* complexity but requires a running event loop in the main thread to "
"work."
msgstr ""
#: library/asyncio-policy.rst:250
#: library/asyncio-policy.rst:262
msgid ""
"This implementation reaps every terminated processes by calling ``os."
"waitpid(-1)`` directly, possibly breaking other code spawning processes and "
@ -418,7 +419,7 @@ msgstr ""
"directement ``os.waitpid(-1)``, cassant éventuellement un autre code qui "
"génère des processus et attend leur fin."
#: library/asyncio-policy.rst:254
#: library/asyncio-policy.rst:266
msgid ""
"There is no noticeable overhead when handling a big number of children "
"(*O(1)* each time a child terminates)."
@ -426,13 +427,13 @@ msgstr ""
"Il n'y a pas de surcharge visible lors de la manipulation d'un grand nombre "
"d'enfants (*O(1)* à chaque fois qu'un enfant se termine)."
#: library/asyncio-policy.rst:257
#: library/asyncio-policy.rst:269
msgid ""
"This solution requires a running event loop in the main thread to work, as :"
"class:`SafeChildWatcher`."
msgstr ""
#: library/asyncio-policy.rst:262
#: library/asyncio-policy.rst:274
msgid ""
"This implementation polls process file descriptors (pidfds) to await child "
"process termination. In some respects, :class:`PidfdChildWatcher` is a "
@ -443,11 +444,11 @@ msgid ""
"only work on recent (5.3+) kernels."
msgstr ""
#: library/asyncio-policy.rst:274
#: library/asyncio-policy.rst:288
msgid "Custom Policies"
msgstr "Stratégies personnalisées"
#: library/asyncio-policy.rst:276
#: library/asyncio-policy.rst:290
msgid ""
"To implement a new event loop policy, it is recommended to subclass :class:"
"`DefaultEventLoopPolicy` and override the methods for which custom behavior "
@ -457,3 +458,13 @@ msgstr ""
"recommandé de sous-classer :class:`DefaultEventLoopPolicy` et de "
"réimplémenter les méthodes pour lesquelles un comportement personnalisé est "
"souhaité, par exemple ::"
#~ msgid ""
#~ "An event loop policy is a global per-process object that controls the "
#~ "management of the event loop. Each event loop has a default policy, which "
#~ "can be changed and customized using the policy API."
#~ msgstr ""
#~ "Une stratégie de boucle d'événements est un objet global, pour chaque "
#~ "processus, qui contrôle la gestion de la boucle d'événement. Chaque "
#~ "boucle d'événement a une stratégie par défaut, qui peut être modifiée et "
#~ "personnalisée à l'aide de l'API de la stratégie."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2019-06-18 22:29+0200\n"
"Last-Translator: Julien Palard <julien@palard.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -749,7 +749,7 @@ msgstr ""
#: library/asyncio-protocol.rst:555
msgid ""
"However, :meth:`protocol.eof_received() <Protocol.eof_received>` is called "
"at most once. Once `eof_received()` is called, ``data_received()`` is not "
"at most once. Once ``eof_received()`` is called, ``data_received()`` is not "
"called anymore."
msgstr ""

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2019-09-06 13:48+0200\n"
"Last-Translator: Julien Palard <julien@palard.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -60,7 +60,7 @@ msgid ""
"`StreamReader` and :class:`StreamWriter` classes."
msgstr ""
#: library/asyncio-stream.rst:99
#: library/asyncio-stream.rst:105
msgid ""
"*limit* determines the buffer size limit used by the returned :class:"
"`StreamReader` instance. By default the *limit* is set to 64 KiB."
@ -72,23 +72,30 @@ msgid ""
"create_connection`."
msgstr ""
#: library/asyncio-stream.rst:70
#: library/asyncio-stream.rst:140
msgid ""
"The *sock* argument transfers ownership of the socket to the :class:"
"`StreamWriter` created. To close the socket, call its :meth:`~asyncio."
"StreamWriter.close` method."
msgstr ""
#: library/asyncio-stream.rst:76
msgid "Added the *ssl_handshake_timeout* parameter."
msgstr ""
#: library/asyncio-stream.rst:73
#: library/asyncio-stream.rst:79
msgid "Added *happy_eyeballs_delay* and *interleave* parameters."
msgstr ""
#: library/asyncio-stream.rst:109 library/asyncio-stream.rst:152
#: library/asyncio-stream.rst:121 library/asyncio-stream.rst:176
msgid "Removed the *loop* parameter."
msgstr ""
#: library/asyncio-stream.rst:88
#: library/asyncio-stream.rst:94
msgid "Start a socket server."
msgstr ""
#: library/asyncio-stream.rst:90
#: library/asyncio-stream.rst:96
msgid ""
"The *client_connected_cb* callback is called whenever a new client "
"connection is established. It receives a ``(reader, writer)`` pair as two "
@ -96,141 +103,147 @@ msgid ""
"classes."
msgstr ""
#: library/asyncio-stream.rst:95
#: library/asyncio-stream.rst:101
msgid ""
"*client_connected_cb* can be a plain callable or a :ref:`coroutine function "
"<coroutine>`; if it is a coroutine function, it will be automatically "
"scheduled as a :class:`Task`."
msgstr ""
#: library/asyncio-stream.rst:103
#: library/asyncio-stream.rst:109
msgid ""
"The rest of the arguments are passed directly to :meth:`loop.create_server`."
msgstr ""
#: library/asyncio-stream.rst:106
#: library/asyncio-stream.rst:166
msgid ""
"The *sock* argument transfers ownership of the socket to the server created. "
"To close the socket, call the server's :meth:`~asyncio.Server.close` method."
msgstr ""
#: library/asyncio-stream.rst:118
msgid "Added the *ssl_handshake_timeout* and *start_serving* parameters."
msgstr ""
#: library/asyncio-stream.rst:114
#: library/asyncio-stream.rst:126
msgid "Unix Sockets"
msgstr ""
#: library/asyncio-stream.rst:119
#: library/asyncio-stream.rst:131
msgid ""
"Establish a Unix socket connection and return a pair of ``(reader, writer)``."
msgstr ""
#: library/asyncio-stream.rst:122
#: library/asyncio-stream.rst:134
msgid "Similar to :func:`open_connection` but operates on Unix sockets."
msgstr ""
#: library/asyncio-stream.rst:124
#: library/asyncio-stream.rst:136
msgid "See also the documentation of :meth:`loop.create_unix_connection`."
msgstr ""
#: library/asyncio-stream.rst:147
#: library/asyncio-stream.rst:171
msgid ":ref:`Availability <availability>`: Unix."
msgstr ":ref:`Disponibilité <availability>` : Unix."
#: library/asyncio-stream.rst:128
#: library/asyncio-stream.rst:146
msgid ""
"Added the *ssl_handshake_timeout* parameter. The *path* parameter can now be "
"a :term:`path-like object`"
msgstr ""
#: library/asyncio-stream.rst:140
#: library/asyncio-stream.rst:158
msgid "Start a Unix socket server."
msgstr ""
#: library/asyncio-stream.rst:142
#: library/asyncio-stream.rst:160
msgid "Similar to :func:`start_server` but works with Unix sockets."
msgstr ""
#: library/asyncio-stream.rst:144
#: library/asyncio-stream.rst:162
msgid "See also the documentation of :meth:`loop.create_unix_server`."
msgstr ""
#: library/asyncio-stream.rst:148
#: library/asyncio-stream.rst:172
msgid ""
"Added the *ssl_handshake_timeout* and *start_serving* parameters. The *path* "
"parameter can now be a :term:`path-like object`."
msgstr ""
#: library/asyncio-stream.rst:157
#: library/asyncio-stream.rst:181
msgid "StreamReader"
msgstr "StreamReader"
#: library/asyncio-stream.rst:161
#: library/asyncio-stream.rst:185
msgid ""
"Represents a reader object that provides APIs to read data from the IO "
"stream."
msgstr ""
#: library/asyncio-stream.rst:164
#: library/asyncio-stream.rst:188
msgid ""
"It is not recommended to instantiate *StreamReader* objects directly; use :"
"func:`open_connection` and :func:`start_server` instead."
msgstr ""
#: library/asyncio-stream.rst:170
#: library/asyncio-stream.rst:194
msgid ""
"Read up to *n* bytes. If *n* is not provided, or set to ``-1``, read until "
"EOF and return all read bytes."
msgstr ""
#: library/asyncio-stream.rst:173
#: library/asyncio-stream.rst:197
msgid ""
"If EOF was received and the internal buffer is empty, return an empty "
"``bytes`` object."
msgstr ""
#: library/asyncio-stream.rst:178
#: library/asyncio-stream.rst:202
msgid ""
"Read one line, where \"line\" is a sequence of bytes ending with ``\\n``."
msgstr ""
#: library/asyncio-stream.rst:181
#: library/asyncio-stream.rst:205
msgid ""
"If EOF is received and ``\\n`` was not found, the method returns partially "
"read data."
msgstr ""
#: library/asyncio-stream.rst:184
#: library/asyncio-stream.rst:208
msgid ""
"If EOF is received and the internal buffer is empty, return an empty "
"``bytes`` object."
msgstr ""
#: library/asyncio-stream.rst:189
#: library/asyncio-stream.rst:213
msgid "Read exactly *n* bytes."
msgstr ""
#: library/asyncio-stream.rst:191
#: library/asyncio-stream.rst:215
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 ""
#: library/asyncio-stream.rst:197
#: library/asyncio-stream.rst:221
msgid "Read data from the stream until *separator* is found."
msgstr ""
#: library/asyncio-stream.rst:199
#: library/asyncio-stream.rst:223
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 ""
#: library/asyncio-stream.rst:203
#: library/asyncio-stream.rst:227
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 ""
#: library/asyncio-stream.rst:207
#: library/asyncio-stream.rst:231
msgid ""
"If EOF is reached before the complete separator is found, an :exc:"
"`IncompleteReadError` exception is raised, and the internal buffer is "
@ -238,77 +251,77 @@ msgid ""
"portion of the separator."
msgstr ""
#: library/asyncio-stream.rst:216
#: library/asyncio-stream.rst:240
msgid "Return ``True`` if the buffer is empty and :meth:`feed_eof` was called."
msgstr ""
#: library/asyncio-stream.rst:221
#: library/asyncio-stream.rst:245
msgid "StreamWriter"
msgstr "StreamWriter"
#: library/asyncio-stream.rst:225
#: library/asyncio-stream.rst:249
msgid ""
"Represents a writer object that provides APIs to write data to the IO stream."
msgstr ""
#: library/asyncio-stream.rst:228
#: library/asyncio-stream.rst:252
msgid ""
"It is not recommended to instantiate *StreamWriter* objects directly; use :"
"func:`open_connection` and :func:`start_server` instead."
msgstr ""
#: library/asyncio-stream.rst:234
#: library/asyncio-stream.rst:258
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 ""
#: library/asyncio-stream.rst:250
#: library/asyncio-stream.rst:274
msgid "The method should be used along with the ``drain()`` method::"
msgstr ""
#: library/asyncio-stream.rst:245
#: library/asyncio-stream.rst:269
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 ""
#: library/asyncio-stream.rst:257
#: library/asyncio-stream.rst:281
msgid "The method closes the stream and the underlying socket."
msgstr ""
#: library/asyncio-stream.rst:259
#: library/asyncio-stream.rst:283
msgid "The method should be used along with the ``wait_closed()`` method::"
msgstr ""
#: library/asyncio-stream.rst:266
#: library/asyncio-stream.rst:290
msgid ""
"Return ``True`` if the underlying transport supports the :meth:`write_eof` "
"method, ``False`` otherwise."
msgstr ""
#: library/asyncio-stream.rst:271
#: library/asyncio-stream.rst:295
msgid ""
"Close the write end of the stream after the buffered write data is flushed."
msgstr ""
#: library/asyncio-stream.rst:276
#: library/asyncio-stream.rst:300
msgid "Return the underlying asyncio transport."
msgstr ""
#: library/asyncio-stream.rst:280
#: library/asyncio-stream.rst:304
msgid ""
"Access optional transport information; see :meth:`BaseTransport."
"get_extra_info` for details."
msgstr ""
#: library/asyncio-stream.rst:285
#: library/asyncio-stream.rst:309
msgid "Wait until it is appropriate to resume writing to the stream. Example::"
msgstr ""
#: library/asyncio-stream.rst:291
#: library/asyncio-stream.rst:315
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()* "
@ -317,90 +330,90 @@ msgid ""
"`drain` returns immediately."
msgstr ""
#: library/asyncio-stream.rst:300
#: library/asyncio-stream.rst:324
msgid ""
"Return ``True`` if the stream is closed or in the process of being closed."
msgstr ""
#: library/asyncio-stream.rst:307
#: library/asyncio-stream.rst:331
msgid "Wait until the stream is closed."
msgstr ""
#: library/asyncio-stream.rst:309
#: library/asyncio-stream.rst:333
msgid ""
"Should be called after :meth:`close` to wait until the underlying connection "
"is closed."
msgstr ""
#: library/asyncio-stream.rst:316
#: library/asyncio-stream.rst:340
msgid "Examples"
msgstr "Exemples"
#: library/asyncio-stream.rst:321
#: library/asyncio-stream.rst:345
msgid "TCP echo client using streams"
msgstr ""
#: library/asyncio-stream.rst:323
#: library/asyncio-stream.rst:347
msgid "TCP echo client using the :func:`asyncio.open_connection` function::"
msgstr ""
#: library/asyncio-stream.rst:345
#: library/asyncio-stream.rst:369
msgid ""
"The :ref:`TCP echo client protocol "
"<asyncio_example_tcp_echo_client_protocol>` example uses the low-level :meth:"
"`loop.create_connection` method."
msgstr ""
#: library/asyncio-stream.rst:352
#: library/asyncio-stream.rst:376
msgid "TCP echo server using streams"
msgstr ""
#: library/asyncio-stream.rst:354
#: library/asyncio-stream.rst:378
msgid "TCP echo server using the :func:`asyncio.start_server` function::"
msgstr ""
#: library/asyncio-stream.rst:387
#: library/asyncio-stream.rst:411
msgid ""
"The :ref:`TCP echo server protocol "
"<asyncio_example_tcp_echo_server_protocol>` example uses the :meth:`loop."
"create_server` method."
msgstr ""
#: library/asyncio-stream.rst:392
#: library/asyncio-stream.rst:416
msgid "Get HTTP headers"
msgstr "Récupère les en-têtes HTTP"
#: library/asyncio-stream.rst:394
#: library/asyncio-stream.rst:418
msgid ""
"Simple example querying HTTP headers of the URL passed on the command line::"
msgstr ""
#: library/asyncio-stream.rst:432
#: library/asyncio-stream.rst:456
msgid "Usage::"
msgstr "Utilisation ::"
#: library/asyncio-stream.rst:436
#: library/asyncio-stream.rst:460
msgid "or with HTTPS::"
msgstr "ou avec HTTPS ::"
#: library/asyncio-stream.rst:444
#: library/asyncio-stream.rst:468
msgid "Register an open socket to wait for data using streams"
msgstr ""
#: library/asyncio-stream.rst:446
#: library/asyncio-stream.rst:470
msgid ""
"Coroutine waiting until a socket receives data using the :func:"
"`open_connection` function::"
msgstr ""
#: library/asyncio-stream.rst:480
#: library/asyncio-stream.rst:504
msgid ""
"The :ref:`register an open socket to wait for data using a protocol "
"<asyncio_example_create_connection>` example uses a low-level protocol and "
"the :meth:`loop.create_connection` method."
msgstr ""
#: library/asyncio-stream.rst:484
#: library/asyncio-stream.rst:508
msgid ""
"The :ref:`watch a file descriptor for read events "
"<asyncio_example_watch_fd>` example uses the low-level :meth:`loop."

File diff suppressed because it is too large Load Diff

View File

@ -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: 2022-10-18 15:46+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"
@ -56,79 +56,130 @@ msgstr ""
#: library/bdb.rst:33
msgid ""
"When creating a breakpoint, its associated filename should be in canonical "
"form. If a *funcname* is defined, a breakpoint hit will be counted when the "
"first line of that function is executed. A conditional breakpoint always "
"counts a hit."
"When creating a breakpoint, its associated :attr:`file name <file>` should "
"be in canonical form. If a :attr:`funcname` is defined, a breakpoint :attr:"
"`hit <hits>` will be counted when the first line of that function is "
"executed. A :attr:`conditional <cond>` breakpoint always counts a :attr:"
"`hit <hits>`."
msgstr ""
#: library/bdb.rst:38
#: library/bdb.rst:39
msgid ":class:`Breakpoint` instances have the following methods:"
msgstr ""
#: library/bdb.rst:42
#: library/bdb.rst:43
msgid ""
"Delete the breakpoint from the list associated to a file/line. If it is the "
"last breakpoint in that position, it also deletes the entry for the file/"
"line."
msgstr ""
#: library/bdb.rst:49
#: library/bdb.rst:50
msgid "Mark the breakpoint as enabled."
msgstr "Active le point d'arrêt."
#: library/bdb.rst:54
#: library/bdb.rst:55
msgid "Mark the breakpoint as disabled."
msgstr "Désactive le point d'arrêt."
#: library/bdb.rst:59
#: library/bdb.rst:60
msgid ""
"Return a string with all the information about the breakpoint, nicely "
"formatted:"
msgstr ""
#: library/bdb.rst:62
msgid "The breakpoint number."
#: library/bdb.rst:63
#, fuzzy
msgid "Breakpoint number."
msgstr "Le numéro du point d'arrêt."
#: library/bdb.rst:63
msgid "If it is temporary or not."
msgstr "S'il est temporaire ou non."
#: library/bdb.rst:64
msgid "Its file,line position."
msgid "Temporary status (del or keep)."
msgstr ""
#: library/bdb.rst:65
msgid "The condition that causes a break."
msgid "File/line position."
msgstr ""
#: library/bdb.rst:66
msgid "If it must be ignored the next N times."
msgid "Break condition."
msgstr ""
#: library/bdb.rst:67
msgid "The breakpoint hit count."
msgid "Number of times to ignore."
msgstr ""
#: library/bdb.rst:73
#: library/bdb.rst:68
msgid "Number of times hit."
msgstr ""
#: library/bdb.rst:74
msgid ""
"Print the output of :meth:`bpformat` to the file *out*, or if it is "
"``None``, to standard output."
msgstr ""
#: library/bdb.rst:79
msgid "The :class:`Bdb` class acts as a generic Python debugger base class."
#: library/bdb.rst:77
msgid ":class:`Breakpoint` instances have the following attributes:"
msgstr ""
#: library/bdb.rst:81
msgid "File name of the :class:`Breakpoint`."
msgstr ""
#: library/bdb.rst:85
msgid "Line number of the :class:`Breakpoint` within :attr:`file`."
msgstr ""
#: library/bdb.rst:89
msgid "True if a :class:`Breakpoint` at (file, line) is temporary."
msgstr ""
#: library/bdb.rst:93
msgid "Condition for evaluating a :class:`Breakpoint` at (file, line)."
msgstr ""
#: library/bdb.rst:97
msgid ""
"Function name that defines whether a :class:`Breakpoint` is hit upon "
"entering the function."
msgstr ""
#: library/bdb.rst:102
#, fuzzy
msgid "True if :class:`Breakpoint` is enabled."
msgstr "Active le point d'arrêt."
#: library/bdb.rst:106
msgid "Numeric index for a single instance of a :class:`Breakpoint`."
msgstr ""
#: library/bdb.rst:110
msgid ""
"Dictionary of :class:`Breakpoint` instances indexed by (:attr:`file`, :attr:"
"`line`) tuples."
msgstr ""
#: library/bdb.rst:115
msgid "Number of times to ignore a :class:`Breakpoint`."
msgstr ""
#: library/bdb.rst:119
msgid "Count of the number of times a :class:`Breakpoint` has been hit."
msgstr ""
#: library/bdb.rst:123
msgid "The :class:`Bdb` class acts as a generic Python debugger base class."
msgstr ""
#: library/bdb.rst:125
msgid ""
"This class takes care of the details of the trace facility; a derived class "
"should implement user interaction. The standard debugger class (:class:`pdb."
"Pdb`) is an example."
msgstr ""
#: library/bdb.rst:85
#: library/bdb.rst:129
msgid ""
"The *skip* argument, if given, must be an iterable of glob-style module name "
"patterns. The debugger will not step into frames that originate in a module "
@ -137,89 +188,94 @@ msgid ""
"globals."
msgstr ""
#: library/bdb.rst:91
#: library/bdb.rst:135
msgid "The *skip* argument."
msgstr "L'argument *skip*."
#: library/bdb.rst:94
#: library/bdb.rst:138
msgid ""
"The following methods of :class:`Bdb` normally don't need to be overridden."
msgstr ""
#: library/bdb.rst:98
msgid ""
"Auxiliary method for getting a filename in a canonical form, that is, as a "
"case-normalized (on case-insensitive filesystems) absolute path, stripped of "
"surrounding angle brackets."
#: library/bdb.rst:142
msgid "Return canonical form of *filename*."
msgstr ""
#: library/bdb.rst:104
#: library/bdb.rst:144
msgid ""
"For real file names, the canonical form is an operating-system-dependent, :"
"func:`case-normalized <os.path.normcase>` :func:`absolute path <os.path."
"abspath>`. A *filename* with angle brackets, such as ``\"<stdin>\"`` "
"generated in interactive mode, is returned unchanged."
msgstr ""
#: library/bdb.rst:151
msgid ""
"Set the :attr:`botframe`, :attr:`stopframe`, :attr:`returnframe` and :attr:"
"`quitting` attributes with values ready to start debugging."
msgstr ""
#: library/bdb.rst:109
#: library/bdb.rst:156
msgid ""
"This function is installed as the trace function of debugged frames. Its "
"return value is the new trace function (in most cases, that is, itself)."
msgstr ""
#: library/bdb.rst:112
#: library/bdb.rst:159
msgid ""
"The default implementation decides how to dispatch a frame, depending on the "
"type of event (passed as a string) that is about to be executed. *event* can "
"be one of the following:"
msgstr ""
#: library/bdb.rst:116
#: library/bdb.rst:163
msgid "``\"line\"``: A new line of code is going to be executed."
msgstr ""
#: library/bdb.rst:117
#: library/bdb.rst:164
msgid ""
"``\"call\"``: A function is about to be called, or another code block "
"entered."
msgstr ""
#: library/bdb.rst:119
#: library/bdb.rst:166
msgid "``\"return\"``: A function or other code block is about to return."
msgstr ""
#: library/bdb.rst:120
#: library/bdb.rst:167
msgid "``\"exception\"``: An exception has occurred."
msgstr "``\"exception\"`` : Une exception est survenue."
#: library/bdb.rst:121
#: library/bdb.rst:168
msgid "``\"c_call\"``: A C function is about to be called."
msgstr "``\"c_call\"`` : Une fonction C est sur le point d'être appelée."
#: library/bdb.rst:122
#: library/bdb.rst:169
msgid "``\"c_return\"``: A C function has returned."
msgstr "``\"c_return\"`` : Une fonction C s'est terminée."
#: library/bdb.rst:123
#: library/bdb.rst:170
msgid "``\"c_exception\"``: A C function has raised an exception."
msgstr ""
#: library/bdb.rst:125
#: library/bdb.rst:172
msgid ""
"For the Python events, specialized functions (see below) are called. For "
"the C events, no action is taken."
msgstr ""
#: library/bdb.rst:128
#: library/bdb.rst:175
msgid "The *arg* parameter depends on the previous event."
msgstr "Le paramètre *arg* dépend de l'événement précédent."
#: library/bdb.rst:130
#: library/bdb.rst:177
msgid ""
"See the documentation for :func:`sys.settrace` for more information on the "
"trace function. For more information on code and frame objects, refer to :"
"ref:`types`."
msgstr ""
#: library/bdb.rst:136
#: library/bdb.rst:183
msgid ""
"If the debugger should stop on the current line, invoke the :meth:"
"`user_line` method (which should be overridden in subclasses). Raise a :exc:"
@ -228,7 +284,7 @@ msgid ""
"`trace_dispatch` method for further tracing in that scope."
msgstr ""
#: library/bdb.rst:144
#: library/bdb.rst:191
msgid ""
"If the debugger should stop on this function call, invoke the :meth:"
"`user_call` method (which should be overridden in subclasses). Raise a :exc:"
@ -237,7 +293,7 @@ msgid ""
"`trace_dispatch` method for further tracing in that scope."
msgstr ""
#: library/bdb.rst:152
#: library/bdb.rst:199
msgid ""
"If the debugger should stop on this function return, invoke the :meth:"
"`user_return` method (which should be overridden in subclasses). Raise a :"
@ -246,7 +302,7 @@ msgid ""
"`trace_dispatch` method for further tracing in that scope."
msgstr ""
#: library/bdb.rst:160
#: library/bdb.rst:207
msgid ""
"If the debugger should stop at this exception, invokes the :meth:"
"`user_exception` method (which should be overridden in subclasses). Raise a :"
@ -255,150 +311,152 @@ msgid ""
"`trace_dispatch` method for further tracing in that scope."
msgstr ""
#: library/bdb.rst:166
#: library/bdb.rst:213
msgid ""
"Normally derived classes don't override the following methods, but they may "
"if they want to redefine the definition of stopping and breakpoints."
msgstr ""
#: library/bdb.rst:171
msgid ""
"This method checks if the *frame* is somewhere below :attr:`botframe` in the "
"call stack. :attr:`botframe` is the frame in which debugging started."
#: library/bdb.rst:218
msgid "Return True if *module_name* matches any skip pattern."
msgstr ""
#: library/bdb.rst:176
msgid ""
"This method checks if there is a breakpoint in the filename and line "
"belonging to *frame* or, at least, in the current function. If the "
"breakpoint is a temporary one, this method deletes it."
#: library/bdb.rst:222
msgid "Return True if *frame* is below the starting frame in the stack."
msgstr ""
#: library/bdb.rst:182
msgid ""
"This method checks if there is a breakpoint in the filename of the current "
"frame."
#: library/bdb.rst:226
msgid "Return True if there is an effective breakpoint for this line."
msgstr ""
#: library/bdb.rst:185
#: library/bdb.rst:228
msgid ""
"Check whether a line or function breakpoint exists and is in effect. Delete "
"temporary breakpoints based on information from :func:`effective`."
msgstr ""
#: library/bdb.rst:233
msgid "Return True if any breakpoint exists for *frame*'s filename."
msgstr ""
#: library/bdb.rst:235
msgid ""
"Derived classes should override these methods to gain control over debugger "
"operation."
msgstr ""
#: library/bdb.rst:190
#: library/bdb.rst:240
msgid ""
"This method is called from :meth:`dispatch_call` when there is the "
"possibility that a break might be necessary anywhere inside the called "
"Called from :meth:`dispatch_call` if a break might stop inside the called "
"function."
msgstr ""
#: library/bdb.rst:196
#: library/bdb.rst:245
msgid ""
"This method is called from :meth:`dispatch_line` when either :meth:"
"`stop_here` or :meth:`break_here` yields ``True``."
"Called from :meth:`dispatch_line` when either :meth:`stop_here` or :meth:"
"`break_here` returns ``True``."
msgstr ""
#: library/bdb.rst:201
#: library/bdb.rst:250
msgid ""
"This method is called from :meth:`dispatch_return` when :meth:`stop_here` "
"yields ``True``."
"Called from :meth:`dispatch_return` when :meth:`stop_here` returns ``True``."
msgstr ""
#: library/bdb.rst:206
#: library/bdb.rst:254
msgid ""
"This method is called from :meth:`dispatch_exception` when :meth:`stop_here` "
"yields ``True``."
"Called from :meth:`dispatch_exception` when :meth:`stop_here` returns "
"``True``."
msgstr ""
#: library/bdb.rst:211
#: library/bdb.rst:259
msgid "Handle how a breakpoint must be removed when it is a temporary one."
msgstr ""
#: library/bdb.rst:213
#: library/bdb.rst:261
msgid "This method must be implemented by derived classes."
msgstr ""
#: library/bdb.rst:216
#: library/bdb.rst:264
msgid ""
"Derived classes and clients can call the following methods to affect the "
"stepping state."
msgstr ""
#: library/bdb.rst:221
#: library/bdb.rst:269
msgid "Stop after one line of code."
msgstr "Arrête après une ligne de code."
#: library/bdb.rst:225
#: library/bdb.rst:273
msgid "Stop on the next line in or below the given frame."
msgstr ""
#: library/bdb.rst:229
#: library/bdb.rst:277
msgid "Stop when returning from the given frame."
msgstr ""
#: library/bdb.rst:233
#: library/bdb.rst:281
msgid ""
"Stop when the line with the line no greater than the current one is reached "
"Stop when the line with the *lineno* greater than the current one is reached "
"or when returning from current frame."
msgstr ""
#: library/bdb.rst:238
#: library/bdb.rst:286
msgid ""
"Start debugging from *frame*. If *frame* is not specified, debugging starts "
"from caller's frame."
msgstr ""
#: library/bdb.rst:243
#: library/bdb.rst:291
msgid ""
"Stop only at breakpoints or when finished. If there are no breakpoints, set "
"the system trace function to ``None``."
msgstr ""
#: library/bdb.rst:248
#: library/bdb.rst:296
msgid ""
"Set the :attr:`quitting` attribute to ``True``. This raises :exc:`BdbQuit` "
"in the next call to one of the :meth:`dispatch_\\*` methods."
msgstr ""
#: library/bdb.rst:252
#: library/bdb.rst:300
msgid ""
"Derived classes and clients can call the following methods to manipulate "
"breakpoints. These methods return a string containing an error message if "
"something went wrong, or ``None`` if all is well."
msgstr ""
#: library/bdb.rst:258
#: library/bdb.rst:306
msgid ""
"Set a new breakpoint. If the *lineno* line doesn't exist for the *filename* "
"passed as argument, return an error message. The *filename* should be in "
"canonical form, as described in the :meth:`canonic` method."
msgstr ""
#: library/bdb.rst:264
#: library/bdb.rst:312
msgid ""
"Delete the breakpoints in *filename* and *lineno*. If none were set, an "
"error message is returned."
"Delete the breakpoints in *filename* and *lineno*. If none were set, return "
"an error message."
msgstr ""
#: library/bdb.rst:269
#: library/bdb.rst:317
msgid ""
"Delete the breakpoint which has the index *arg* in the :attr:`Breakpoint."
"bpbynumber`. If *arg* is not numeric or out of range, return an error "
"message."
msgstr ""
#: library/bdb.rst:275
#: library/bdb.rst:323
msgid ""
"Delete all breakpoints in *filename*. If none were set, an error message is "
"returned."
"Delete all breakpoints in *filename*. If none were set, return an error "
"message."
msgstr ""
#: library/bdb.rst:280
msgid "Delete all existing breakpoints."
msgstr "Supprime tous les points d'arrêt définis."
#: library/bdb.rst:328
msgid ""
"Delete all existing breakpoints. If none were set, return an error message."
msgstr ""
#: library/bdb.rst:284
#: library/bdb.rst:333
msgid ""
"Return a breakpoint specified by the given number. If *arg* is a string, it "
"will be converted to a number. If *arg* is a non-numeric string, if the "
@ -406,114 +464,141 @@ msgid ""
"raised."
msgstr ""
#: library/bdb.rst:293
msgid "Check if there is a breakpoint for *lineno* of *filename*."
#: library/bdb.rst:342
msgid "Return True if there is a breakpoint for *lineno* in *filename*."
msgstr ""
#: library/bdb.rst:297
#: library/bdb.rst:346
msgid ""
"Return all breakpoints for *lineno* in *filename*, or an empty list if none "
"are set."
msgstr ""
#: library/bdb.rst:302
#: library/bdb.rst:351
msgid "Return all breakpoints in *filename*, or an empty list if none are set."
msgstr ""
#: library/bdb.rst:306
#: library/bdb.rst:355
msgid "Return all breakpoints that are set."
msgstr "Donne tous les points d'arrêt définis."
#: library/bdb.rst:309
#: library/bdb.rst:358
msgid ""
"Derived classes and clients can call the following methods to get a data "
"structure representing a stack trace."
msgstr ""
#: library/bdb.rst:314
#: library/bdb.rst:363
msgid "Return a list of (frame, lineno) tuples in a stack trace, and a size."
msgstr ""
#: library/bdb.rst:365
msgid ""
"Get a list of records for a frame and all higher (calling) and lower frames, "
"and the size of the higher part."
"The most recently called frame is last in the list. The size is the number "
"of frames below the frame where the debugger was invoked."
msgstr ""
#: library/bdb.rst:319
#: library/bdb.rst:370
msgid ""
"Return a string with information about a stack entry, identified by a "
"``(frame, lineno)`` tuple:"
"Return a string with information about a stack entry, which is a ``(frame, "
"lineno)`` tuple. The return string contains:"
msgstr ""
#: library/bdb.rst:322
msgid "The canonical form of the filename which contains the frame."
#: library/bdb.rst:373
msgid "The canonical filename which contains the frame."
msgstr ""
#: library/bdb.rst:323
msgid "The function name, or ``\"<lambda>\"``."
#: library/bdb.rst:374
#, fuzzy
msgid "The function name or ``\"<lambda>\"``."
msgstr "Le nom de la fonction, ou ``\"<lambda>\"``."
#: library/bdb.rst:324
#: library/bdb.rst:375
msgid "The input arguments."
msgstr "Les arguments donnés."
#: library/bdb.rst:325
#: library/bdb.rst:376
msgid "The return value."
msgstr "Le résultat."
#: library/bdb.rst:326
#: library/bdb.rst:377
msgid "The line of code (if it exists)."
msgstr "La ligne de code (si elle existe)."
#: library/bdb.rst:329
#: library/bdb.rst:380
msgid ""
"The following two methods can be called by clients to use a debugger to "
"debug a :term:`statement`, given as a string."
msgstr ""
#: library/bdb.rst:334
#: library/bdb.rst:385
msgid ""
"Debug a statement executed via the :func:`exec` function. *globals* "
"defaults to :attr:`__main__.__dict__`, *locals* defaults to *globals*."
msgstr ""
#: library/bdb.rst:339
#: library/bdb.rst:390
msgid ""
"Debug an expression executed via the :func:`eval` function. *globals* and "
"*locals* have the same meaning as in :meth:`run`."
msgstr ""
#: library/bdb.rst:344
#: library/bdb.rst:395
msgid "For backwards compatibility. Calls the :meth:`run` method."
msgstr ""
#: library/bdb.rst:348
#: library/bdb.rst:399
msgid "Debug a single function call, and return its result."
msgstr ""
#: library/bdb.rst:351
#: library/bdb.rst:402
msgid "Finally, the module defines the following functions:"
msgstr ""
#: library/bdb.rst:355
#: library/bdb.rst:406
msgid ""
"Check whether we should break here, depending on the way the breakpoint *b* "
"was set."
"Return True if we should break here, depending on the way the :class:"
"`Breakpoint` *b* was set."
msgstr ""
#: library/bdb.rst:358
#: library/bdb.rst:409
msgid ""
"If it was set via line number, it checks if ``b.line`` is the same as the "
"one in the frame also passed as argument. If the breakpoint was set via "
"function name, we have to check we are in the right frame (the right "
"function) and if we are in its first executable line."
"If it was set via line number, it checks if :attr:`b.line <bdb.Breakpoint."
"line>` is the same as the one in *frame*. If the breakpoint was set via :"
"attr:`function name <bdb.Breakpoint.funcname>`, we have to check we are in "
"the right *frame* (the right function) and if we are on its first executable "
"line."
msgstr ""
#: library/bdb.rst:365
#: library/bdb.rst:418
msgid ""
"Determine if there is an effective (active) breakpoint at this line of code. "
"Return a tuple of the breakpoint and a boolean that indicates if it is ok to "
"delete a temporary breakpoint. Return ``(None, None)`` if there is no "
"matching breakpoint."
"Return ``(active breakpoint, delete temporary flag)`` or ``(None, None)`` as "
"the breakpoint to act upon."
msgstr ""
#: library/bdb.rst:372
#: library/bdb.rst:421
msgid ""
"The *active breakpoint* is the first entry in :attr:`bplist <bdb.Breakpoint."
"bplist>` for the (:attr:`file <bdb.Breakpoint.file>`, :attr:`line <bdb."
"Breakpoint.line>`) (which must exist) that is :attr:`enabled <bdb.Breakpoint."
"enabled>`, for which :func:`checkfuncname` is True, and that has neither a "
"False :attr:`condition <bdb.Breakpoint.cond>` nor positive :attr:`ignore "
"<bdb.Breakpoint.ignore>` count. The *flag*, meaning that a temporary "
"breakpoint should be deleted, is False only when the :attr:`cond <bdb."
"Breakpoint.cond>` cannot be evaluated (in which case, :attr:`ignore <bdb."
"Breakpoint.ignore>` count is ignored)."
msgstr ""
#: library/bdb.rst:432
msgid "If no such entry exists, then (None, None) is returned."
msgstr ""
#: library/bdb.rst:437
msgid "Start debugging with a :class:`Bdb` instance from caller's frame."
msgstr ""
#~ msgid "If it is temporary or not."
#~ msgstr "S'il est temporaire ou non."
#~ msgid "Delete all existing breakpoints."
#~ msgstr "Supprime tous les points d'arrêt définis."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-05-21 16:37+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2021-10-17 12:13+0200\n"
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -205,10 +205,11 @@ msgstr ""
"les exemples plus bas)."
#: library/bisect.rst:129
#, fuzzy
msgid ""
"`Sorted Collections <http://www.grantjenks.com/docs/sortedcollections/>`_ is "
"a high performance module that uses *bisect* to managed sorted collections "
"of data."
"`Sorted Collections <https://grantjenks.com/docs/sortedcollections/>`_ is a "
"high performance module that uses *bisect* to managed sorted collections of "
"data."
msgstr ""
"`Sorted Collections <http://www.grantjenks.com/docs/sortedcollections/>`_ "
"est un module de haute performance qui fait appel à *bisect* pour maintenir "

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-03-18 17:06+0100\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2021-11-06 20:24+0100\n"
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -392,10 +392,11 @@ msgstr ""
"négatif), l'attribut :attr:`~.needs_input` sera configuré sur ``True``."
#: library/bz2.rst:208
#, fuzzy
msgid ""
"Attempting to decompress data after the end of stream is reached raises an "
"`EOFError`. Any data found after the end of the stream is ignored and saved "
"in the :attr:`~.unused_data` attribute."
"Attempting to decompress data after the end of stream is reached raises an :"
"exc:`EOFError`. Any data found after the end of the stream is ignored and "
"saved in the :attr:`~.unused_data` attribute."
msgstr ""
"Essayer de décompresser des données après que la fin du flux soit atteinte "
"lève une erreur ``EOFError``. Toute donnée trouvée après la fin du flux est "
@ -490,9 +491,10 @@ msgstr ""
"incrémentielle :"
#: library/bz2.rst:305
#, fuzzy
msgid ""
"The example above uses a very \"nonrandom\" stream of data (a stream of "
"`b\"z\"` chunks). Random data tends to compress poorly, while ordered, "
"``b\"z\"`` chunks). Random data tends to compress poorly, while ordered, "
"repetitive data usually yields a high compression ratio."
msgstr ""
"L'exemple ci-dessus utilise un flux de données vraiment pas aléatoire (un "

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+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"
@ -171,6 +171,16 @@ msgstr ""
#: library/concurrent.futures.rst:152
msgid ""
"All threads enqueued to ``ThreadPoolExecutor`` will be joined before the "
"interpreter can exit. Note that the exit handler which does this is executed "
"*before* any exit handlers added using ``atexit``. This means exceptions in "
"the main thread must be caught and handled in order to signal threads to "
"exit gracefully. For this reason, it is recommended that "
"``ThreadPoolExecutor`` not be used for long-running tasks."
msgstr ""
#: library/concurrent.futures.rst:159
msgid ""
"*initializer* is an optional callable that is called at the start of each "
"worker thread; *initargs* is a tuple of arguments passed to the "
"initializer. Should *initializer* raise an exception, all currently pending "
@ -178,7 +188,7 @@ msgid ""
"well as any attempt to submit more jobs to the pool."
msgstr ""
#: library/concurrent.futures.rst:158
#: library/concurrent.futures.rst:165
msgid ""
"If *max_workers* is ``None`` or not given, it will default to the number of "
"processors on the machine, multiplied by ``5``, assuming that :class:"
@ -187,18 +197,18 @@ msgid ""
"`ProcessPoolExecutor`."
msgstr ""
#: library/concurrent.futures.rst:166
#: library/concurrent.futures.rst:173
msgid ""
"The *thread_name_prefix* argument was added to allow users to control the :"
"class:`threading.Thread` names for worker threads created by the pool for "
"easier debugging."
msgstr ""
#: library/concurrent.futures.rst:171 library/concurrent.futures.rst:265
#: library/concurrent.futures.rst:178 library/concurrent.futures.rst:272
msgid "Added the *initializer* and *initargs* arguments."
msgstr ""
#: library/concurrent.futures.rst:174
#: library/concurrent.futures.rst:181
msgid ""
"Default value of *max_workers* is changed to ``min(32, os.cpu_count() + "
"4)``. This default value preserves at least 5 workers for I/O bound tasks. "
@ -206,21 +216,21 @@ msgid ""
"And it avoids using very large resources implicitly on many-core machines."
msgstr ""
#: library/concurrent.futures.rst:180
#: library/concurrent.futures.rst:187
msgid ""
"ThreadPoolExecutor now reuses idle worker threads before starting "
"*max_workers* worker threads too."
msgstr ""
#: library/concurrent.futures.rst:187
#: library/concurrent.futures.rst:194
msgid "ThreadPoolExecutor Example"
msgstr ""
#: library/concurrent.futures.rst:219
#: library/concurrent.futures.rst:226
msgid "ProcessPoolExecutor"
msgstr "ProcessPoolExecutor"
#: library/concurrent.futures.rst:221
#: library/concurrent.futures.rst:228
msgid ""
"The :class:`ProcessPoolExecutor` class is an :class:`Executor` subclass that "
"uses a pool of processes to execute calls asynchronously. :class:"
@ -230,20 +240,20 @@ msgid ""
"returned."
msgstr ""
#: library/concurrent.futures.rst:228
#: library/concurrent.futures.rst:235
msgid ""
"The ``__main__`` module must be importable by worker subprocesses. This "
"means that :class:`ProcessPoolExecutor` will not work in the interactive "
"interpreter."
msgstr ""
#: library/concurrent.futures.rst:231
#: library/concurrent.futures.rst:238
msgid ""
"Calling :class:`Executor` or :class:`Future` methods from a callable "
"submitted to a :class:`ProcessPoolExecutor` will result in deadlock."
msgstr ""
#: library/concurrent.futures.rst:236
#: library/concurrent.futures.rst:243
msgid ""
"An :class:`Executor` subclass that executes calls asynchronously using a "
"pool of at most *max_workers* processes. If *max_workers* is ``None`` or "
@ -257,7 +267,7 @@ msgid ""
"not given, the default multiprocessing context is used."
msgstr ""
#: library/concurrent.futures.rst:249
#: library/concurrent.futures.rst:256
msgid ""
"*initializer* is an optional callable that is called at the start of each "
"worker process; *initargs* is a tuple of arguments passed to the "
@ -266,7 +276,7 @@ msgid ""
"well as any attempt to submit more jobs to the pool."
msgstr ""
#: library/concurrent.futures.rst:255
#: library/concurrent.futures.rst:262
msgid ""
"When one of the worker processes terminates abruptly, a :exc:"
"`BrokenProcessPool` error is now raised. Previously, behaviour was "
@ -274,34 +284,34 @@ msgid ""
"or deadlock."
msgstr ""
#: library/concurrent.futures.rst:261
#: library/concurrent.futures.rst:268
msgid ""
"The *mp_context* argument was added to allow users to control the "
"start_method for worker processes created by the pool."
msgstr ""
#: library/concurrent.futures.rst:271
#: library/concurrent.futures.rst:278
msgid "ProcessPoolExecutor Example"
msgstr ""
#: library/concurrent.futures.rst:309
#: library/concurrent.futures.rst:316
msgid "Future Objects"
msgstr ""
#: library/concurrent.futures.rst:311
#: library/concurrent.futures.rst:318
msgid ""
"The :class:`Future` class encapsulates the asynchronous execution of a "
"callable. :class:`Future` instances are created by :meth:`Executor.submit`."
msgstr ""
#: library/concurrent.futures.rst:316
#: library/concurrent.futures.rst:323
msgid ""
"Encapsulates the asynchronous execution of a callable. :class:`Future` "
"instances are created by :meth:`Executor.submit` and should not be created "
"directly except for testing."
msgstr ""
#: library/concurrent.futures.rst:322
#: library/concurrent.futures.rst:329
msgid ""
"Attempt to cancel the call. If the call is currently being executed or "
"finished running and cannot be cancelled then the method will return "
@ -309,22 +319,22 @@ msgid ""
"``True``."
msgstr ""
#: library/concurrent.futures.rst:329
#: library/concurrent.futures.rst:336
msgid "Return ``True`` if the call was successfully cancelled."
msgstr ""
#: library/concurrent.futures.rst:333
#: library/concurrent.futures.rst:340
msgid ""
"Return ``True`` if the call is currently being executed and cannot be "
"cancelled."
msgstr ""
#: library/concurrent.futures.rst:338
#: library/concurrent.futures.rst:345
msgid ""
"Return ``True`` if the call was successfully cancelled or finished running."
msgstr ""
#: library/concurrent.futures.rst:343
#: library/concurrent.futures.rst:350
msgid ""
"Return the value returned by the call. If the call hasn't yet completed then "
"this method will wait up to *timeout* seconds. If the call hasn't completed "
@ -333,18 +343,18 @@ msgid ""
"``None``, there is no limit to the wait time."
msgstr ""
#: library/concurrent.futures.rst:350 library/concurrent.futures.rst:364
#: library/concurrent.futures.rst:357 library/concurrent.futures.rst:371
msgid ""
"If the future is cancelled before completing then :exc:`.CancelledError` "
"will be raised."
msgstr ""
#: library/concurrent.futures.rst:353
#: library/concurrent.futures.rst:360
msgid ""
"If the call raised an exception, this method will raise the same exception."
msgstr ""
#: library/concurrent.futures.rst:357
#: library/concurrent.futures.rst:364
msgid ""
"Return the exception raised by the call. If the call hasn't yet completed "
"then this method will wait up to *timeout* seconds. If the call hasn't "
@ -353,18 +363,18 @@ msgid ""
"*timeout* is not specified or ``None``, there is no limit to the wait time."
msgstr ""
#: library/concurrent.futures.rst:367
#: library/concurrent.futures.rst:374
msgid "If the call completed without raising, ``None`` is returned."
msgstr ""
#: library/concurrent.futures.rst:371
#: library/concurrent.futures.rst:378
msgid ""
"Attaches the callable *fn* to the future. *fn* will be called, with the "
"future as its only argument, when the future is cancelled or finishes "
"running."
msgstr ""
#: library/concurrent.futures.rst:375
#: library/concurrent.futures.rst:382
msgid ""
"Added callables are called in the order that they were added and are always "
"called in a thread belonging to the process that added them. If the "
@ -373,74 +383,74 @@ msgid ""
"behavior is undefined."
msgstr ""
#: library/concurrent.futures.rst:381
#: library/concurrent.futures.rst:388
msgid ""
"If the future has already completed or been cancelled, *fn* will be called "
"immediately."
msgstr ""
#: library/concurrent.futures.rst:384
#: library/concurrent.futures.rst:391
msgid ""
"The following :class:`Future` methods are meant for use in unit tests and :"
"class:`Executor` implementations."
msgstr ""
#: library/concurrent.futures.rst:389
#: library/concurrent.futures.rst:396
msgid ""
"This method should only be called by :class:`Executor` implementations "
"before executing the work associated with the :class:`Future` and by unit "
"tests."
msgstr ""
#: library/concurrent.futures.rst:393
#: library/concurrent.futures.rst:400
msgid ""
"If the method returns ``False`` then the :class:`Future` was cancelled, i."
"e. :meth:`Future.cancel` was called and returned `True`. Any threads "
"e. :meth:`Future.cancel` was called and returned ``True``. Any threads "
"waiting on the :class:`Future` completing (i.e. through :func:`as_completed` "
"or :func:`wait`) will be woken up."
msgstr ""
#: library/concurrent.futures.rst:398
#: library/concurrent.futures.rst:405
msgid ""
"If the method returns ``True`` then the :class:`Future` was not cancelled "
"and has been put in the running state, i.e. calls to :meth:`Future.running` "
"will return `True`."
"will return ``True``."
msgstr ""
#: library/concurrent.futures.rst:402
#: library/concurrent.futures.rst:409
msgid ""
"This method can only be called once and cannot be called after :meth:`Future."
"set_result` or :meth:`Future.set_exception` have been called."
msgstr ""
#: library/concurrent.futures.rst:408
#: library/concurrent.futures.rst:415
msgid ""
"Sets the result of the work associated with the :class:`Future` to *result*."
msgstr ""
#: library/concurrent.futures.rst:411 library/concurrent.futures.rst:424
#: library/concurrent.futures.rst:418 library/concurrent.futures.rst:431
msgid ""
"This method should only be used by :class:`Executor` implementations and "
"unit tests."
msgstr ""
#: library/concurrent.futures.rst:414 library/concurrent.futures.rst:427
#: library/concurrent.futures.rst:421 library/concurrent.futures.rst:434
msgid ""
"This method raises :exc:`concurrent.futures.InvalidStateError` if the :class:"
"`Future` is already done."
msgstr ""
#: library/concurrent.futures.rst:421
#: library/concurrent.futures.rst:428
msgid ""
"Sets the result of the work associated with the :class:`Future` to the :"
"class:`Exception` *exception*."
msgstr ""
#: library/concurrent.futures.rst:433
#: library/concurrent.futures.rst:440
msgid "Module Functions"
msgstr ""
#: library/concurrent.futures.rst:437
#: library/concurrent.futures.rst:444
msgid ""
"Wait for the :class:`Future` instances (possibly created by different :class:"
"`Executor` instances) given by *fs* to complete. Duplicate futures given to "
@ -451,14 +461,14 @@ msgid ""
"running futures)."
msgstr ""
#: library/concurrent.futures.rst:445
#: library/concurrent.futures.rst:452
msgid ""
"*timeout* can be used to control the maximum number of seconds to wait "
"before returning. *timeout* can be an int or float. If *timeout* is not "
"specified or ``None``, there is no limit to the wait time."
msgstr ""
#: library/concurrent.futures.rst:449
#: library/concurrent.futures.rst:456
msgid ""
"*return_when* indicates when this function should return. It must be one of "
"the following constants:"
@ -466,28 +476,28 @@ msgstr ""
"*return_when* indique quand la fonction doit se terminer. Il peut prendre "
"les valeurs suivantes :"
#: library/concurrent.futures.rst:455
#: library/concurrent.futures.rst:462
msgid "Constant"
msgstr "Constante"
#: library/concurrent.futures.rst:455
#: library/concurrent.futures.rst:462
msgid "Description"
msgstr "Description"
#: library/concurrent.futures.rst:457
#: library/concurrent.futures.rst:464
msgid ":const:`FIRST_COMPLETED`"
msgstr ":const:`FIRST_COMPLETED`"
#: library/concurrent.futures.rst:457
#: library/concurrent.futures.rst:464
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é."
#: library/concurrent.futures.rst:460
#: library/concurrent.futures.rst:467
msgid ":const:`FIRST_EXCEPTION`"
msgstr ":const:`FIRST_EXCEPTION`"
#: library/concurrent.futures.rst:460
#: library/concurrent.futures.rst:467
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:"
@ -497,16 +507,16 @@ msgstr ""
"exception. Si aucun *futur* ne lève d'exception, équivaut à :const:"
"`ALL_COMPLETED`."
#: library/concurrent.futures.rst:466
#: library/concurrent.futures.rst:473
msgid ":const:`ALL_COMPLETED`"
msgstr ":const:`ALL_COMPLETED`"
#: library/concurrent.futures.rst:466
#: library/concurrent.futures.rst:473
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."
#: library/concurrent.futures.rst:472
#: library/concurrent.futures.rst:479
msgid ""
"Returns an iterator over the :class:`Future` instances (possibly created by "
"different :class:`Executor` instances) given by *fs* that yields futures as "
@ -520,49 +530,49 @@ msgid ""
"wait time."
msgstr ""
#: library/concurrent.futures.rst:486
#: library/concurrent.futures.rst:493
msgid ":pep:`3148` -- futures - execute computations asynchronously"
msgstr ""
#: library/concurrent.futures.rst:486
#: library/concurrent.futures.rst:493
msgid ""
"The proposal which described this feature for inclusion in the Python "
"standard library."
msgstr ""
#: library/concurrent.futures.rst:491
#: library/concurrent.futures.rst:498
msgid "Exception classes"
msgstr ""
#: library/concurrent.futures.rst:497
#: library/concurrent.futures.rst:504
msgid "Raised when a future is cancelled."
msgstr ""
#: library/concurrent.futures.rst:501
#: library/concurrent.futures.rst:508
msgid "Raised when a future operation exceeds the given timeout."
msgstr ""
#: library/concurrent.futures.rst:505
#: library/concurrent.futures.rst:512
msgid ""
"Derived from :exc:`RuntimeError`, this exception class is raised when an "
"executor is broken for some reason, and cannot be used to submit or execute "
"new tasks."
msgstr ""
#: library/concurrent.futures.rst:513
#: library/concurrent.futures.rst:520
msgid ""
"Raised when an operation is performed on a future that is not allowed in the "
"current state."
msgstr ""
#: library/concurrent.futures.rst:522
#: library/concurrent.futures.rst:529
msgid ""
"Derived from :exc:`~concurrent.futures.BrokenExecutor`, this exception class "
"is raised when one of the workers of a :class:`ThreadPoolExecutor` has "
"failed initializing."
msgstr ""
#: library/concurrent.futures.rst:532
#: library/concurrent.futures.rst:539
msgid ""
"Derived from :exc:`~concurrent.futures.BrokenExecutor` (formerly :exc:"
"`RuntimeError`), this exception class is raised when one of the workers of "

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2021-11-06 21:37+0100\n"
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -105,7 +105,11 @@ msgstr ""
"L'exemple abstrait suivant présente comment assurer une gestion correcte des "
"ressources ::"
#: library/contextlib.rst:73
#: library/contextlib.rst:69
msgid "The function can then be used like this::"
msgstr ""
#: library/contextlib.rst:75
msgid ""
"The function being decorated must return a :term:`generator`-iterator when "
"called. This iterator must yield exactly one value, which will be bound to "
@ -116,7 +120,7 @@ msgstr ""
"seule valeur, qui est récupérée dans le bloc :keyword:`with` à l'aide de la "
"clause :keyword:`!as` si précisée."
#: library/contextlib.rst:77
#: library/contextlib.rst:79
msgid ""
"At the point where the generator yields, the block nested in the :keyword:"
"`with` statement is executed. The generator is then resumed after the block "
@ -144,7 +148,7 @@ msgstr ""
"l'instruction :keyword:`!with` que l'exception a été gérée, et l'exécution "
"reprend sur l'instruction qui suit directement le bloc :keyword:`!with`."
#: library/contextlib.rst:89
#: library/contextlib.rst:91
msgid ""
":func:`contextmanager` uses :class:`ContextDecorator` so the context "
"managers it creates can be used as decorators as well as in :keyword:`with` "
@ -163,11 +167,11 @@ msgstr ""
"`contextmanager` de remplir la condition de pouvoir être invoqués plusieurs "
"fois afin d'être utilisés comme décorateurs)."
#: library/contextlib.rst:96
#: library/contextlib.rst:98
msgid "Use of :class:`ContextDecorator`."
msgstr "Utilisation de la classe :class:`ContextDecorator`."
#: library/contextlib.rst:102
#: library/contextlib.rst:104
msgid ""
"Similar to :func:`~contextlib.contextmanager`, but creates an :ref:"
"`asynchronous context manager <async-context-managers>`."
@ -175,7 +179,7 @@ msgstr ""
"Similaire à :func:`~contextlib.contextmanager`, mais crée un :ref:"
"`gestionnaire de contexte asynchrone <async-context-managers>`."
#: library/contextlib.rst:105
#: library/contextlib.rst:107
msgid ""
"This function is a :term:`decorator` that can be used to define a factory "
"function for :keyword:`async with` statement asynchronous context managers, "
@ -190,11 +194,11 @@ msgstr ""
"doit être appliqué à une fonction renvoyant un :term:`asynchronous "
"generator`."
#: library/contextlib.rst:111
#: library/contextlib.rst:113
msgid "A simple example::"
msgstr "Un exemple simple ::"
#: library/contextlib.rst:129
#: library/contextlib.rst:131
msgid ""
"Context managers defined with :func:`asynccontextmanager` can be used either "
"as decorators or with :keyword:`async with` statements::"
@ -203,7 +207,7 @@ msgstr ""
"peuvent s'utiliser comme décorateurs ou dans les instructions :keyword:"
"`async with` :"
#: library/contextlib.rst:147
#: library/contextlib.rst:149
msgid ""
"When used as a decorator, a new generator instance is implicitly created on "
"each function call. This allows the otherwise \"one-shot\" context managers "
@ -211,7 +215,7 @@ msgid ""
"managers support multiple invocations in order to be used as decorators."
msgstr ""
#: library/contextlib.rst:152
#: library/contextlib.rst:154
#, fuzzy
msgid ""
"Async context managers created with :func:`asynccontextmanager` can be used "
@ -220,7 +224,7 @@ msgstr ""
"Une classe mère qui permet à un gestionnaire de contexte d'être aussi "
"utilisé comme décorateur."
#: library/contextlib.rst:159
#: library/contextlib.rst:161
msgid ""
"Return a context manager that closes *thing* upon completion of the block. "
"This is basically equivalent to::"
@ -228,11 +232,11 @@ msgstr ""
"Renvoie un gestionnaire de contexte qui ferme *thing* à la fin du bloc. "
"C'est essentiellement équivalent à ::"
#: library/contextlib.rst:171
#: library/contextlib.rst:173
msgid "And lets you write code like this::"
msgstr "Et cela vous permet d'écrire du code tel que ::"
#: library/contextlib.rst:180
#: library/contextlib.rst:182
msgid ""
"without needing to explicitly close ``page``. Even if an error occurs, "
"``page.close()`` will be called when the :keyword:`with` block is exited."
@ -240,7 +244,7 @@ msgstr ""
"sans besoin de fermer explicitement ``page``. Même si une erreur survient, "
"``page.close()`` est appelée à la fermeture du bloc :keyword:`with`."
#: library/contextlib.rst:186
#: library/contextlib.rst:188
#, fuzzy
msgid ""
"Return an async context manager that calls the ``aclose()`` method of "
@ -249,14 +253,14 @@ msgstr ""
"Renvoie un gestionnaire de contexte qui ferme *thing* à la fin du bloc. "
"C'est essentiellement équivalent à ::"
#: library/contextlib.rst:198
#: library/contextlib.rst:200
msgid ""
"Significantly, ``aclosing()`` supports deterministic cleanup of async "
"generators when they happen to exit early by :keyword:`break` or an "
"exception. For example::"
msgstr ""
#: library/contextlib.rst:209
#: library/contextlib.rst:211
msgid ""
"This pattern ensures that the generator's async exit code is executed in the "
"same context as its iterations (so that exceptions and context variables "
@ -264,7 +268,7 @@ msgid ""
"task it depends on)."
msgstr ""
#: library/contextlib.rst:221
#: library/contextlib.rst:223
msgid ""
"Return a context manager that returns *enter_result* from ``__enter__``, but "
"otherwise does nothing. It is intended to be used as a stand-in for an "
@ -274,11 +278,11 @@ msgstr ""
"*enter_result*, mais ne fait rien d'autre. L'idée est de l'utiliser comme "
"remplaçant pour un gestionnaire de contexte optionnel, par exemple ::"
#: library/contextlib.rst:235
#: library/contextlib.rst:237
msgid "An example using *enter_result*::"
msgstr "Un exemple utilisant *enter_result* ::"
#: library/contextlib.rst:248
#: library/contextlib.rst:250
#, fuzzy
msgid ""
"It can also be used as a stand-in for :ref:`asynchronous context managers "
@ -287,11 +291,11 @@ msgstr ""
"Similaire à :func:`~contextlib.contextmanager`, mais crée un :ref:"
"`gestionnaire de contexte asynchrone <async-context-managers>`."
#: library/contextlib.rst:264
#: library/contextlib.rst:266
msgid ":term:`asynchronous context manager` support was added."
msgstr ""
#: library/contextlib.rst:271
#: library/contextlib.rst:273
#, fuzzy
msgid ""
"Return a context manager that suppresses any of the specified exceptions if "
@ -303,7 +307,7 @@ msgstr ""
"spécifiées si elles surviennent dans le corps du bloc *with*, et reprend "
"l'exécution sur la première instruction qui suit la fin du bloc *with*."
#: library/contextlib.rst:276
#: library/contextlib.rst:278
msgid ""
"As with any other mechanism that completely suppresses exceptions, this "
"context manager should be used only to cover very specific errors where "
@ -315,19 +319,19 @@ msgstr ""
"très spécifiques d'erreurs où il est certain que continuer silencieusement "
"l'exécution du programme est la bonne chose à faire."
#: library/contextlib.rst:281
#: library/contextlib.rst:283
msgid "For example::"
msgstr "Par exemple ::"
#: library/contextlib.rst:291
#: library/contextlib.rst:293
msgid "This code is equivalent to::"
msgstr "Ce code est équivalent à ::"
#: library/contextlib.rst:343 library/contextlib.rst:353
#: library/contextlib.rst:345 library/contextlib.rst:355
msgid "This context manager is :ref:`reentrant <reentrant-cms>`."
msgstr "Ce gestionnaire de contexte est :ref:`réentrant <reentrant-cms>`."
#: library/contextlib.rst:310
#: library/contextlib.rst:312
msgid ""
"Context manager for temporarily redirecting :data:`sys.stdout` to another "
"file or file-like object."
@ -335,7 +339,7 @@ msgstr ""
"Gestionnaire de contexte servant à rediriger temporairement :data:`sys."
"stdout` vers un autre fichier ou objet fichier-compatible."
#: library/contextlib.rst:313
#: library/contextlib.rst:315
msgid ""
"This tool adds flexibility to existing functions or classes whose output is "
"hardwired to stdout."
@ -343,7 +347,7 @@ msgstr ""
"Cet outil ajoute une certaine flexibilité aux fonctions ou classes "
"existantes dont la sortie est envoyée vers la sortie standard."
#: library/contextlib.rst:316
#: library/contextlib.rst:318
#, fuzzy
msgid ""
"For example, the output of :func:`help` normally is sent to *sys.stdout*. "
@ -356,7 +360,7 @@ msgstr ""
"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:326
#: library/contextlib.rst:328
msgid ""
"To send the output of :func:`help` to a file on disk, redirect the output to "
"a regular file::"
@ -364,11 +368,11 @@ msgstr ""
"Pour envoyer la sortie de :func:`help` vers un fichier sur le disque, "
"redirigez-la sur un fichier normal ::"
#: library/contextlib.rst:333
#: library/contextlib.rst:335
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:338
#: library/contextlib.rst:340
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 "
@ -382,7 +386,7 @@ msgstr ""
"Cependant, cela reste une approche utile pour beaucoup de scripts "
"utilitaires."
#: library/contextlib.rst:350
#: library/contextlib.rst:352
msgid ""
"Similar to :func:`~contextlib.redirect_stdout` but redirecting :data:`sys."
"stderr` to another file or file-like object."
@ -390,14 +394,14 @@ msgstr ""
"Similaire à :func:`~contextlib.redirect_stdout` mais redirige :data:`sys."
"stderr` vers un autre fichier ou objet fichier-compatible."
#: library/contextlib.rst:360
#: library/contextlib.rst:362
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:362
#: library/contextlib.rst:364
msgid ""
"Context managers inheriting from ``ContextDecorator`` have to implement "
"``__enter__`` and ``__exit__`` as normal. ``__exit__`` retains its optional "
@ -408,7 +412,7 @@ msgstr ""
"conserve sa gestion optionnelle des exceptions même lors de l'utilisation en "
"décorateur."
#: library/contextlib.rst:366
#: library/contextlib.rst:368
msgid ""
"``ContextDecorator`` is used by :func:`contextmanager`, so you get this "
"functionality automatically."
@ -416,22 +420,26 @@ msgstr ""
"``ContextDecorator`` est utilisé par :func:`contextmanager`, donc vous "
"bénéficiez automatiquement de cette fonctionnalité."
#: library/contextlib.rst:369
#: library/contextlib.rst:371
msgid "Example of ``ContextDecorator``::"
msgstr "Exemple de ``ContextDecorator`` ::"
#: library/contextlib.rst:398
#: library/contextlib.rst:456
msgid "The class can then be used like this::"
msgstr ""
#: library/contextlib.rst:402
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:404
#: library/contextlib.rst:408
msgid "``ContextDecorator`` lets you instead write::"
msgstr "``ContextDecorator`` vous permet d'écrire à la place ::"
#: library/contextlib.rst:410
#: library/contextlib.rst:414
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)."
@ -440,7 +448,7 @@ msgstr ""
"seulement à un morceau en particulier (et gagner un niveau d'indentation est "
"toujours appréciable)."
#: library/contextlib.rst:413
#: library/contextlib.rst:417
msgid ""
"Existing context managers that already have a base class can be extended by "
"using ``ContextDecorator`` as a mixin class::"
@ -448,7 +456,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:426
#: library/contextlib.rst:430
msgid ""
"As the decorated function must be able to be called multiple times, the "
"underlying context manager must support use in multiple :keyword:`with` "
@ -461,7 +469,7 @@ msgstr ""
"construction d'origine avec de multiples instructions :keyword:`!with` au "
"sein de la fonction doit être utilisée."
#: library/contextlib.rst:436
#: library/contextlib.rst:440
#, fuzzy
msgid ""
"Similar to :class:`ContextDecorator` but only for asynchronous functions."
@ -469,12 +477,12 @@ msgstr ""
"Similaire à :meth:`enter_context` mais attend un gestionnaire de contexte "
"asynchrone."
#: library/contextlib.rst:438
#: library/contextlib.rst:442
#, fuzzy
msgid "Example of ``AsyncContextDecorator``::"
msgstr "Exemple de ``ContextDecorator`` ::"
#: library/contextlib.rst:475
#: library/contextlib.rst:481
msgid ""
"A context manager that is designed to make it easy to programmatically "
"combine other context managers and cleanup functions, especially those that "
@ -485,7 +493,7 @@ msgstr ""
"nettoyage, spécifiquement ceux qui sont optionnels ou pilotés par des "
"données d'entrée."
#: library/contextlib.rst:479
#: library/contextlib.rst:485
msgid ""
"For example, a set of files may easily be handled in a single with statement "
"as follows::"
@ -493,13 +501,13 @@ msgstr ""
"Par exemple, un ensemble de fichiers peut facilement être géré dans une "
"unique instruction *with* comme suit ::"
#: library/contextlib.rst:488
#: library/contextlib.rst:494
msgid ""
"The :meth:`__enter__` method returns the :class:`ExitStack` instance, and "
"performs no additional operations."
msgstr ""
#: library/contextlib.rst:491
#: library/contextlib.rst:497
msgid ""
"Each instance maintains a stack of registered callbacks that are called in "
"reverse order when the instance is closed (either explicitly or implicitly "
@ -512,7 +520,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:496
#: library/contextlib.rst:502
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 "
@ -522,7 +530,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:500
#: library/contextlib.rst:506
msgid ""
"Since registered callbacks are invoked in the reverse order of registration, "
"this ends up behaving as if multiple nested :keyword:`with` statements had "
@ -538,7 +546,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:507
#: library/contextlib.rst:513
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 "
@ -550,7 +558,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:516
#: library/contextlib.rst:522
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 :"
@ -560,7 +568,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:520
#: library/contextlib.rst:526
msgid ""
"These context managers may suppress exceptions just as they normally would "
"if used directly as part of a :keyword:`with` statement."
@ -569,13 +577,13 @@ msgstr ""
"feraient normalement s'ils étaient utilisés directement derrière une "
"instruction :keyword:`with`."
#: library/contextlib.rst:525
#: library/contextlib.rst:531
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:527
#: library/contextlib.rst:533
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:"
@ -585,7 +593,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:531
#: library/contextlib.rst:537
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__` "
@ -596,7 +604,7 @@ msgstr ""
"meth:`__exit__` des gestionnaires de contexte pour l'ajouter directement à "
"la pile d'appels."
#: library/contextlib.rst:535
#: library/contextlib.rst:541
msgid ""
"By returning true values, these callbacks can suppress exceptions the same "
"way context manager :meth:`__exit__` methods can."
@ -605,7 +613,7 @@ msgstr ""
"exceptions de la même manière que le peuvent les méthodes :meth:`__exit__` "
"des gestionnaires de contexte."
#: library/contextlib.rst:538
#: library/contextlib.rst:544
msgid ""
"The passed in object is returned from the function, allowing this method to "
"be used as a function decorator."
@ -613,7 +621,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:543
#: library/contextlib.rst:549
msgid ""
"Accepts an arbitrary callback function and arguments and adds it to the "
"callback stack."
@ -621,7 +629,7 @@ msgstr ""
"Accepte une fonction arbitraire et ses arguments et les ajoute à la pile des "
"fonctions de rappel."
#: library/contextlib.rst:546
#: library/contextlib.rst:552
msgid ""
"Unlike the other methods, callbacks added this way cannot suppress "
"exceptions (as they are never passed the exception details)."
@ -630,7 +638,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:549
#: library/contextlib.rst:555
msgid ""
"The passed in callback is returned from the function, allowing this method "
"to be used as a function decorator."
@ -638,7 +646,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:554
#: library/contextlib.rst:560
msgid ""
"Transfers the callback stack to a fresh :class:`ExitStack` instance and "
"returns it. No callbacks are invoked by this operation - instead, they will "
@ -650,7 +658,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:559
#: library/contextlib.rst:565
msgid ""
"For example, a group of files can be opened as an \"all or nothing\" "
"operation as follows::"
@ -658,7 +666,7 @@ msgstr ""
"Par exemple, un groupe de fichiers peut être ouvert comme une opération "
 tout ou rien » comme suit ::"
#: library/contextlib.rst:573
#: library/contextlib.rst:579
msgid ""
"Immediately unwinds the callback stack, invoking callbacks in the reverse "
"order of registration. For any context managers and exit callbacks "
@ -669,7 +677,7 @@ msgstr ""
"et fonction de sortie enregistré, les arguments passés indiqueront qu'aucune "
"exception n'est survenue."
#: library/contextlib.rst:580
#: library/contextlib.rst:586
msgid ""
"An :ref:`asynchronous context manager <async-context-managers>`, similar to :"
"class:`ExitStack`, that supports combining both synchronous and asynchronous "
@ -680,7 +688,7 @@ msgstr ""
"de contexte synchrones et asynchrones, ainsi que la gestion de coroutines "
"pour la logique de nettoyage."
#: library/contextlib.rst:585
#: library/contextlib.rst:591
msgid ""
"The :meth:`close` method is not implemented, :meth:`aclose` must be used "
"instead."
@ -688,14 +696,14 @@ msgstr ""
"La méthode :meth:`close` n'est pas implémentée, :meth:`aclose` doit plutôt "
"être utilisée."
#: library/contextlib.rst:590
#: library/contextlib.rst:596
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:595
#: library/contextlib.rst:601
msgid ""
"Similar to :meth:`push` but expects either an asynchronous context manager "
"or a coroutine function."
@ -703,24 +711,24 @@ msgstr ""
"Similaire à :meth:`push` mais attend soit un gestionnaire de contexte "
"asynchrone soit une fonction coroutine."
#: library/contextlib.rst:600
#: library/contextlib.rst:606
msgid "Similar to :meth:`callback` but expects a coroutine function."
msgstr "Similaire à :meth:`callback` mais attend une fonction coroutine."
#: library/contextlib.rst:604
#: library/contextlib.rst:610
msgid "Similar to :meth:`close` but properly handles awaitables."
msgstr ""
"Similaire à :meth:`close` mais gère correctement les tâches asynchrones."
#: library/contextlib.rst:606
#: library/contextlib.rst:612
msgid "Continuing the example for :func:`asynccontextmanager`::"
msgstr "En continuité de l'exemple de :func:`asynccontextmanager` ::"
#: library/contextlib.rst:618
#: library/contextlib.rst:624
msgid "Examples and Recipes"
msgstr "Exemples et Recettes"
#: library/contextlib.rst:620
#: library/contextlib.rst:626
msgid ""
"This section describes some examples and recipes for making effective use of "
"the tools provided by :mod:`contextlib`."
@ -728,11 +736,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:625
#: library/contextlib.rst:631
msgid "Supporting a variable number of context managers"
msgstr "Gérer un nombre variable de gestionnaires de contexte"
#: library/contextlib.rst:627
#: library/contextlib.rst:633
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 "
@ -749,7 +757,7 @@ msgstr ""
"collection spécifique de fichiers de l'utilisateur), ou de certains "
"gestionnaires de contexte qui peuvent être optionnels ::"
#: library/contextlib.rst:642
#: library/contextlib.rst:648
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 "
@ -759,11 +767,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:648
#: library/contextlib.rst:654
msgid "Catching exceptions from ``__enter__`` methods"
msgstr "Attraper des exceptions depuis les méthodes ``__enter__``"
#: library/contextlib.rst:650
#: library/contextlib.rst:656
msgid ""
"It is occasionally desirable to catch exceptions from an ``__enter__`` "
"method implementation, *without* inadvertently catching exceptions from the :"
@ -778,7 +786,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:665
#: library/contextlib.rst:671
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 :"
@ -797,11 +805,11 @@ msgstr ""
"gestion de plusieurs situations qui ne peuvent pas être traitées directement "
"dans une instruction :keyword:`with`."
#: library/contextlib.rst:675
#: library/contextlib.rst:681
msgid "Cleaning up in an ``__enter__`` implementation"
msgstr "Nettoyer dans une méthode ``__enter__``"
#: library/contextlib.rst:677
#: library/contextlib.rst:683
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 :"
@ -811,7 +819,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:681
#: library/contextlib.rst:687
msgid ""
"Here's an example of doing this for a context manager that accepts resource "
"acquisition and release functions, along with an optional validation "
@ -821,11 +829,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:721
#: library/contextlib.rst:727
msgid "Replacing any use of ``try-finally`` and flag variables"
msgstr "Remplacer un ``try-finally`` avec une option variable"
#: library/contextlib.rst:723
#: library/contextlib.rst:729
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 "
@ -837,7 +845,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:737
#: library/contextlib.rst:743
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 "
@ -848,7 +856,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:741
#: library/contextlib.rst:747
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 "
@ -858,7 +866,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:753
#: library/contextlib.rst:759
msgid ""
"This allows the intended cleanup up behaviour to be made explicit up front, "
"rather than requiring a separate flag variable."
@ -866,7 +874,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:756
#: library/contextlib.rst:762
msgid ""
"If a particular application uses this pattern a lot, it can be simplified "
"even further by means of a small helper class::"
@ -874,7 +882,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:774
#: library/contextlib.rst:780
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:"
@ -885,7 +893,7 @@ msgstr ""
"`ExitStack.callback` pour déclarer la fonction de nettoyage de ressource en "
"avance ::"
#: library/contextlib.rst:789
#: library/contextlib.rst:795
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 "
@ -896,12 +904,12 @@ msgstr ""
"doivent être récupérées depuis l'extérieur comme des variables de fermeture "
"(*closure*)."
#: library/contextlib.rst:795
#: library/contextlib.rst:801
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:797
#: library/contextlib.rst:803
msgid ""
":class:`ContextDecorator` makes it possible to use a context manager in both "
"an ordinary ``with`` statement and also as a function decorator."
@ -910,7 +918,7 @@ msgstr ""
"contexte à la fois ordinairement avec une instruction ``with`` ou comme un "
"décorateur de fonction."
#: library/contextlib.rst:800
#: library/contextlib.rst:806
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. "
@ -925,17 +933,17 @@ msgstr ""
"`ContextDecorator` fournit les deux fonctionnalités en une seule "
"définition ::"
#: library/contextlib.rst:821
#: library/contextlib.rst:827
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:827
#: library/contextlib.rst:833
msgid "And also as a function decorator::"
msgstr "Et comme décorateurs de fonctions ::"
#: library/contextlib.rst:834
#: library/contextlib.rst:840
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:"
@ -947,11 +955,11 @@ msgstr ""
"de retour de :meth:`__enter__`. Si cette valeur est nécessaire, il faut "
"utiliser explicitement une instruction ``with``."
#: library/contextlib.rst:842
#: library/contextlib.rst:848
msgid ":pep:`343` - The \"with\" statement"
msgstr ":pep:`343` - The \"with\" statement"
#: library/contextlib.rst:842
#: library/contextlib.rst:848
msgid ""
"The specification, background, and examples for the Python :keyword:`with` "
"statement."
@ -959,11 +967,11 @@ msgstr ""
"La spécification, les motivations et des exemples de l'instruction :keyword:"
"`with` en Python."
#: library/contextlib.rst:848
#: library/contextlib.rst:854
msgid "Single use, reusable and reentrant context managers"
msgstr "Gestionnaires de contexte à usage unique, réutilisables et réentrants"
#: library/contextlib.rst:850
#: library/contextlib.rst:856
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 "
@ -976,7 +984,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:856
#: library/contextlib.rst:862
msgid ""
"This common limitation means that it is generally advisable to create "
"context managers directly in the header of the :keyword:`with` statement "
@ -987,7 +995,7 @@ msgstr ""
"`with` où ils sont utilisés (comme montré dans tous les exemples "
"d'utilisation au-dessus)."
#: library/contextlib.rst:860
#: library/contextlib.rst:866
msgid ""
"Files are an example of effectively single use context managers, since the "
"first :keyword:`with` statement will close the file, preventing any further "
@ -998,7 +1006,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:864
#: library/contextlib.rst:870
msgid ""
"Context managers created using :func:`contextmanager` are also single use "
"context managers, and will complain about the underlying generator failing "
@ -1008,11 +1016,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:892
#: library/contextlib.rst:898
msgid "Reentrant context managers"
msgstr "Gestionnaires de contexte réentrants"
#: library/contextlib.rst:894
#: library/contextlib.rst:900
msgid ""
"More sophisticated context managers may be \"reentrant\". These context "
"managers can not only be used in multiple :keyword:`with` statements, but "
@ -1025,7 +1033,7 @@ msgstr ""
"l'intérieur* d'une instruction :keyword:`!with` qui utilise déjà ce même "
"gestionnaire de contexte."
#: library/contextlib.rst:899
#: library/contextlib.rst:905
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 "
@ -1035,7 +1043,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:918
#: library/contextlib.rst:924
msgid ""
"Real world examples of reentrancy are more likely to involve multiple "
"functions calling each other and hence be far more complicated than this "
@ -1045,7 +1053,7 @@ msgstr ""
"fonctions s'entre-appelant, et donc être bien plus compliqués que cet "
"exemple."
#: library/contextlib.rst:922
#: library/contextlib.rst:928
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, "
@ -1057,11 +1065,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:931
#: library/contextlib.rst:937
msgid "Reusable context managers"
msgstr "Gestionnaires de contexte réutilisables"
#: library/contextlib.rst:933
#: library/contextlib.rst:939
msgid ""
"Distinct from both single use and reentrant context managers are "
"\"reusable\" context managers (or, to be completely explicit, \"reusable, "
@ -1079,7 +1087,7 @@ msgstr ""
"contexte référencée a déjà été utilisée dans une instruction *with* "
"englobante."
#: library/contextlib.rst:940
#: library/contextlib.rst:946
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:"
@ -1089,7 +1097,7 @@ msgstr ""
"réutilisable mais pas réentrant (pour un verrou réentrant, il faut à la "
"place utiliser :class:`threading.RLock`)."
#: library/contextlib.rst:944
#: library/contextlib.rst:950
msgid ""
"Another example of a reusable, but not reentrant, context manager is :class:"
"`ExitStack`, as it invokes *all* currently registered callbacks when leaving "
@ -1100,7 +1108,7 @@ msgstr ""
"actuellement enregistrées en quittant l'instruction *with*, sans regarder où "
"ces fonctions ont été ajoutées ::"
#: library/contextlib.rst:975
#: library/contextlib.rst:981
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 "
@ -1112,7 +1120,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:980
#: library/contextlib.rst:986
msgid ""
"Using separate :class:`ExitStack` instances instead of reusing a single "
"instance avoids that problem::"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-03-18 17:06+0100\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2018-11-23 15:14+0100\n"
"Last-Translator: Jules Lasne <jules.lasne@gmail.com>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -49,36 +49,30 @@ msgstr ""
"`TypeError` est levée."
#: library/copyreg.rst:30
#, fuzzy
msgid ""
"Declares that *function* should be used as a \"reduction\" function for "
"objects of type *type*. *function* should return either a string or a tuple "
"containing two or three elements."
"containing two or three elements. See the :attr:`~pickle.Pickler."
"dispatch_table` for more details on the interface of *function*."
msgstr ""
"Déclare que *function* devrait être utilisée en tant que fonction de "
"*réduction* pour des objets de type *type*. *function* doit soit renvoyer "
"une chaîne de caractères soit un *n*-uplet qui contient deux ou trois "
"éléments."
#: library/copyreg.rst:34
#: library/copyreg.rst:35
msgid ""
"The *constructor_ob* parameter is a legacy feature and is now ignored, but "
"if passed it must be a callable."
msgstr ""
#: library/copyreg.rst:38
#, fuzzy
msgid ""
"The optional *constructor* parameter, if provided, is a callable object "
"which can be used to reconstruct the object when called with the tuple of "
"arguments returned by *function* at pickling time. A :exc:`TypeError` is "
"raised if the *constructor* is not callable."
msgstr ""
"Le paramètre optionnel *contructor*, s'il est donné, est un objet appelable "
"qui peux être utilisé pour reconstruire lobjet lorsqu'il est appelé avec un "
"*n*-uplet d'arguments renvoyés par *function* durant la sérialisation avec "
"*pickle*. Une exception :exc:`TypeError` est levée si *object* est une "
"classe ou si *constructor* n'est pas appelable."
#: library/copyreg.rst:39
msgid ""
"See the :mod:`pickle` module for more details on the interface expected of "
"*function* and *constructor*. Note that the :attr:`~pickle.Pickler."
"dispatch_table` attribute of a pickler object or subclass of :class:`pickle."
"Pickler` can also be used for declaring reduction functions."
"Note that the :attr:`~pickle.Pickler.dispatch_table` attribute of a pickler "
"object or subclass of :class:`pickle.Pickler` can also be used for declaring "
"reduction functions."
msgstr ""
"Voir le module :mod:`pickle` pour plus de détails sur l'interface attendue "
"de *function* et *constructor*. Notez que lattribut :attr:`~pickle.Pickler."
@ -86,14 +80,27 @@ msgstr ""
"`pickle.Pickler` peut aussi être utilisée pour déclarer des fonctions "
"réductrices."
#: library/copyreg.rst:46
#: library/copyreg.rst:43
msgid "Example"
msgstr "Exemple"
#: library/copyreg.rst:48
#: library/copyreg.rst:45
msgid ""
"The example below would like to show how to register a pickle function and "
"how it will be used:"
msgstr ""
"L'exemple si-dessous essaye de démontrer comment enregistrer une fonction "
"*pickle* et comment elle sera utilisée :"
#, fuzzy
#~ msgid ""
#~ "The optional *constructor* parameter, if provided, is a callable object "
#~ "which can be used to reconstruct the object when called with the tuple of "
#~ "arguments returned by *function* at pickling time. A :exc:`TypeError` is "
#~ "raised if the *constructor* is not callable."
#~ msgstr ""
#~ "Le paramètre optionnel *contructor*, s'il est donné, est un objet "
#~ "appelable qui peux être utilisé pour reconstruire lobjet lorsqu'il est "
#~ "appelé avec un *n*-uplet d'arguments renvoyés par *function* durant la "
#~ "sérialisation avec *pickle*. Une exception :exc:`TypeError` est levée si "
#~ "*object* est une classe ou si *constructor* n'est pas appelable."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2022-05-20 10:21+0200\n"
"Last-Translator: Mathieu Dupuy <deronnax@gmail.com>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -324,12 +324,12 @@ msgid ""
"subtly different CSV data. :class:`Dialect` instances define how :class:"
"`reader` and :class:`writer` instances behave."
msgstr ""
"La classe :class:`Dialect` est une classe dont les attributs "
"contiennent des informations sur la façon de gérer les guillemets, les "
"espaces, les délimiteurs, etc. En raison de labsence dune spécification "
"CSV stricte, différentes applications produisent des données CSV subtilement "
"différentes. Les instances :class:`Dialect` définissent le comportement des "
"instances :class:`reader` et :class:`writer`."
"La classe :class:`Dialect` est une classe dont les attributs contiennent des "
"informations sur la façon de gérer les guillemets, les espaces, les "
"délimiteurs, etc. En raison de labsence dune spécification CSV stricte, "
"différentes applications produisent des données CSV subtilement différentes. "
"Les instances :class:`Dialect` définissent le comportement des instances :"
"class:`reader` et :class:`writer`."
#: library/csv.rst:234
msgid ""
@ -610,8 +610,9 @@ msgstr ""
"const:`QUOTE_MINIMAL`."
#: library/csv.rst:415
#, fuzzy
msgid ""
"When :const:`True`, whitespace immediately following the *delimiter* is "
"When :const:`True`, spaces immediately following the *delimiter* are "
"ignored. The default is :const:`False`."
msgstr ""
"Quand il vaut :const:`True`, les espaces suivant directement *delimiter* "

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-05-21 16:37+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2021-11-09 08:06+0100\n"
"Last-Translator: Antoine Wecxsteen\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -262,13 +262,14 @@ msgstr ""
"C)."
#: library/ctypes.rst:197
#, fuzzy
msgid ""
"``None``, integers, bytes objects and (unicode) strings are the only native "
"Python objects that can directly be used as parameters in these function "
"calls. ``None`` is passed as a C ``NULL`` pointer, bytes objects and strings "
"are passed as pointer to the memory block that contains their data (:c:type:"
"`char *` or :c:type:`wchar_t *`). Python integers are passed as the "
"platforms default C :c:type:`int` type, their value is masked to fit into "
"are passed as pointer to the memory block that contains their data (:c:expr:"
"`char *` or :c:expr:`wchar_t *`). Python integers are passed as the "
"platforms default C :c:expr:`int` type, their value is masked to fit into "
"the C type."
msgstr ""
"``None``, les entiers, les objets octets et les chaînes de caractères "
@ -316,7 +317,8 @@ msgid ":class:`c_bool`"
msgstr ":class:`c_bool`"
#: library/ctypes.rst:218
msgid ":c:type:`_Bool`"
#, fuzzy
msgid ":c:expr:`_Bool`"
msgstr ":c:type:`_Bool`"
#: library/ctypes.rst:218
@ -328,7 +330,8 @@ msgid ":class:`c_char`"
msgstr ":class:`c_char`"
#: library/ctypes.rst:224
msgid ":c:type:`char`"
#, fuzzy
msgid ":c:expr:`char`"
msgstr ":c:type:`char`"
#: library/ctypes.rst:220
@ -340,7 +343,8 @@ msgid ":class:`c_wchar`"
msgstr ":class:`c_wchar`"
#: library/ctypes.rst:222
msgid ":c:type:`wchar_t`"
#, fuzzy
msgid ":c:expr:`wchar_t`"
msgstr ":c:type:`wchar_t`"
#: library/ctypes.rst:222
@ -361,7 +365,8 @@ msgid ":class:`c_ubyte`"
msgstr ":class:`c_ubyte`"
#: library/ctypes.rst:226
msgid ":c:type:`unsigned char`"
#, fuzzy
msgid ":c:expr:`unsigned char`"
msgstr ":c:type:`unsigned char`"
#: library/ctypes.rst:228
@ -369,7 +374,8 @@ msgid ":class:`c_short`"
msgstr ":class:`c_short`"
#: library/ctypes.rst:228
msgid ":c:type:`short`"
#, fuzzy
msgid ":c:expr:`short`"
msgstr ":c:type:`short`"
#: library/ctypes.rst:230
@ -377,7 +383,8 @@ msgid ":class:`c_ushort`"
msgstr ":class:`c_ushort`"
#: library/ctypes.rst:230
msgid ":c:type:`unsigned short`"
#, fuzzy
msgid ":c:expr:`unsigned short`"
msgstr ":c:type:`unsigned short`"
#: library/ctypes.rst:232
@ -385,7 +392,8 @@ msgid ":class:`c_int`"
msgstr ":class:`c_int`"
#: library/ctypes.rst:232
msgid ":c:type:`int`"
#, fuzzy
msgid ":c:expr:`int`"
msgstr ":c:type:`int`"
#: library/ctypes.rst:234
@ -393,7 +401,8 @@ msgid ":class:`c_uint`"
msgstr ":class:`c_uint`"
#: library/ctypes.rst:234
msgid ":c:type:`unsigned int`"
#, fuzzy
msgid ":c:expr:`unsigned int`"
msgstr ":c:type:`unsigned int`"
#: library/ctypes.rst:236
@ -401,7 +410,8 @@ msgid ":class:`c_long`"
msgstr ":class:`c_long`"
#: library/ctypes.rst:236
msgid ":c:type:`long`"
#, fuzzy
msgid ":c:expr:`long`"
msgstr ":c:type:`long`"
#: library/ctypes.rst:238
@ -409,7 +419,8 @@ msgid ":class:`c_ulong`"
msgstr ":class:`c_ulong`"
#: library/ctypes.rst:238
msgid ":c:type:`unsigned long`"
#, fuzzy
msgid ":c:expr:`unsigned long`"
msgstr ":c:type:`unsigned long`"
#: library/ctypes.rst:240
@ -417,7 +428,8 @@ msgid ":class:`c_longlong`"
msgstr ":class:`c_longlong`"
#: library/ctypes.rst:240
msgid ":c:type:`__int64` or :c:type:`long long`"
#, fuzzy
msgid ":c:expr:`__int64` or :c:expr:`long long`"
msgstr ":c:type:`__int64` ou :c:type:`long long`"
#: library/ctypes.rst:242
@ -425,7 +437,8 @@ msgid ":class:`c_ulonglong`"
msgstr ":class:`c_ulonglong`"
#: library/ctypes.rst:242
msgid ":c:type:`unsigned __int64` or :c:type:`unsigned long long`"
#, fuzzy
msgid ":c:expr:`unsigned __int64` or :c:expr:`unsigned long long`"
msgstr ":c:type:`unsigned __int64` ou :c:type:`unsigned long long`"
#: library/ctypes.rst:245
@ -433,7 +446,8 @@ msgid ":class:`c_size_t`"
msgstr ":class:`c_size_t`"
#: library/ctypes.rst:245
msgid ":c:type:`size_t`"
#, fuzzy
msgid ":c:expr:`size_t`"
msgstr ":c:type:`size_t`"
#: library/ctypes.rst:247
@ -441,7 +455,8 @@ msgid ":class:`c_ssize_t`"
msgstr ":class:`c_ssize_t`"
#: library/ctypes.rst:247
msgid ":c:type:`ssize_t` or :c:type:`Py_ssize_t`"
#, fuzzy
msgid ":c:expr:`ssize_t` or :c:expr:`Py_ssize_t`"
msgstr ":c:type:`ssize_t` ou :c:type:`Py_ssize_t`"
#: library/ctypes.rst:250
@ -449,7 +464,8 @@ msgid ":class:`c_float`"
msgstr ":class:`c_float`"
#: library/ctypes.rst:250
msgid ":c:type:`float`"
#, fuzzy
msgid ":c:expr:`float`"
msgstr ":c:type:`float`"
#: library/ctypes.rst:252 library/ctypes.rst:254
@ -461,7 +477,8 @@ msgid ":class:`c_double`"
msgstr ":class:`c_double`"
#: library/ctypes.rst:252
msgid ":c:type:`double`"
#, fuzzy
msgid ":c:expr:`double`"
msgstr ":c:type:`double`"
#: library/ctypes.rst:254
@ -469,7 +486,8 @@ msgid ":class:`c_longdouble`"
msgstr ":class:`c_longdouble`"
#: library/ctypes.rst:254
msgid ":c:type:`long double`"
#, fuzzy
msgid ":c:expr:`long double`"
msgstr ":c:type:`long double`"
#: library/ctypes.rst:256
@ -477,7 +495,8 @@ msgid ":class:`c_char_p`"
msgstr ":class:`c_char_p`"
#: library/ctypes.rst:256
msgid ":c:type:`char *` (NUL terminated)"
#, fuzzy
msgid ":c:expr:`char *` (NUL terminated)"
msgstr ":c:type:`char *` (terminé par NUL)"
#: library/ctypes.rst:256
@ -489,7 +508,8 @@ msgid ":class:`c_wchar_p`"
msgstr ":class:`c_wchar_p`"
#: library/ctypes.rst:258
msgid ":c:type:`wchar_t *` (NUL terminated)"
#, fuzzy
msgid ":c:expr:`wchar_t *` (NUL terminated)"
msgstr ":c:type:`wchar_t *` (terminé par NUL)"
#: library/ctypes.rst:258
@ -501,7 +521,8 @@ msgid ":class:`c_void_p`"
msgstr ":class:`c_void_p`"
#: library/ctypes.rst:260
msgid ":c:type:`void *`"
#, fuzzy
msgid ":c:expr:`void *`"
msgstr ":c:type:`void *`"
#: library/ctypes.rst:260
@ -556,11 +577,12 @@ msgstr ""
"permet d'y accéder comme à une chaîne de caractères terminée par NUL ::"
#: library/ctypes.rst:333
#, fuzzy
msgid ""
"The :func:`create_string_buffer` function replaces the :func:`c_buffer` "
"function (which is still available as an alias), as well as the :func:"
"`c_string` function from earlier ctypes releases. To create a mutable "
"memory block containing unicode characters of the C type :c:type:`wchar_t` "
"memory block containing unicode characters of the C type :c:expr:`wchar_t` "
"use the :func:`create_unicode_buffer` function."
msgstr ""
"La fonction :func:`create_string_buffer` remplace les fonctions :func:"
@ -683,8 +705,9 @@ msgid "Return types"
msgstr "Types de sortie"
#: library/ctypes.rst:447
#, fuzzy
msgid ""
"By default functions are assumed to return the C :c:type:`int` type. Other "
"By default functions are assumed to return the C :c:expr:`int` type. Other "
"return types can be specified by setting the :attr:`restype` attribute of "
"the function object."
msgstr ""
@ -1350,8 +1373,9 @@ msgid "Quoting the docs for that value:"
msgstr "Citons la documentation :"
#: library/ctypes.rst:1078
#, fuzzy
msgid ""
"This pointer is initialized to point to an array of :c:type:`struct _frozen` "
"This pointer is initialized to point to an array of :c:struct:`_frozen` "
"records, terminated by one whose members are all ``NULL`` or zero. When a "
"frozen module is imported, it is searched in this table. Third-party code "
"could play tricks with this to provide a dynamically created collection of "
@ -1373,9 +1397,10 @@ msgstr ""
"avec :mod:`ctypes` ::"
#: library/ctypes.rst:1095
#, fuzzy
msgid ""
"We have defined the :c:type:`struct _frozen` data type, so we can get the "
"pointer to the table::"
"We have defined the :c:struct:`_frozen` data type, so we can get the pointer "
"to the table::"
msgstr ""
"Le type de donnée :c:type:`struct _frozen` ayant été défini, nous pouvons "
"récupérer le pointeur vers le tableau ::"
@ -1656,10 +1681,11 @@ msgstr ""
"suivantes :"
#: library/ctypes.rst:1325
#, fuzzy
msgid ""
"Instances of this class represent loaded shared libraries. Functions in "
"these libraries use the standard C calling convention, and are assumed to "
"return :c:type:`int`."
"return :c:expr:`int`."
msgstr ""
"Une instance de cette classe représente une bibliothèque partagée déjà "
"chargée. Les fonctions de cette bibliothèque utilisent la convention d'appel "
@ -1715,10 +1741,11 @@ msgid ":exc:`WindowsError` used to be raised."
msgstr ":exc:`WindowsError` était levée auparavant."
#: library/ctypes.rst:1360
#, fuzzy
msgid ""
"Windows only: Instances of this class represent loaded shared libraries, "
"functions in these libraries use the ``stdcall`` calling convention, and are "
"assumed to return :c:type:`int` by default."
"assumed to return :c:expr:`int` by default."
msgstr ""
"En Windows seulement : une instance de cette classe représente une "
"bibliothèque partagée déjà chargée. Les fonctions de cette bibliothèque "
@ -1962,9 +1989,10 @@ msgid ""
msgstr "Il existe un moyen rapide d'accéder directement à l'API C Python :"
#: library/ctypes.rst:1516
#, fuzzy
msgid ""
"An instance of :class:`PyDLL` that exposes Python C API functions as "
"attributes. Note that all these functions are assumed to return C :c:type:"
"attributes. Note that all these functions are assumed to return C :c:expr:"
"`int`, which is of course not always the truth, so you have to assign the "
"correct :attr:`restype` attribute to use these functions."
msgstr ""
@ -2072,18 +2100,20 @@ msgstr ""
"spécifiques de l'objet représentant la fonction externe."
#: library/ctypes.rst:1563
#, fuzzy
msgid ""
"Assign a ctypes type to specify the result type of the foreign function. Use "
"``None`` for :c:type:`void`, a function not returning anything."
"``None`` for :c:expr:`void`, a function not returning anything."
msgstr ""
"Fait correspondre le type de retour de la fonction externe à un type "
"*ctypes*. Dans le cas où la fonction ne renvoie rien (:c:type:`void`), "
"utilisez ``None``."
#: library/ctypes.rst:1566
#, fuzzy
msgid ""
"It is possible to assign a callable Python object that is not a ctypes type, "
"in this case the function is assumed to return a C :c:type:`int`, and the "
"in this case the function is assumed to return a C :c:expr:`int`, and the "
"callable will be called with this integer, allowing further processing or "
"error checking. Using this is deprecated, for more flexible post processing "
"or error checking use a ctypes data type as :attr:`restype` and assign a "
@ -2644,8 +2674,8 @@ msgstr ""
#: library/ctypes.rst:1937
msgid ""
"Windows only: Returns the last error code set by Windows in the calling "
"thread. This function calls the Windows `GetLastError()` function directly, "
"it does not return the ctypes-private copy of the error code."
"thread. This function calls the Windows ``GetLastError()`` function "
"directly, it does not return the ctypes-private copy of the error code."
msgstr ""
#: library/ctypes.rst:1943
@ -2945,21 +2975,21 @@ msgstr ""
#: library/ctypes.rst:2180
msgid ""
"Represents the C :c:type:`signed char` datatype, and interprets the value as "
"Represents the C :c:expr:`signed char` datatype, and interprets the value as "
"small integer. The constructor accepts an optional integer initializer; no "
"overflow checking is done."
msgstr ""
#: library/ctypes.rst:2187
msgid ""
"Represents the C :c:type:`char` datatype, and interprets the value as a "
"Represents the C :c:expr:`char` datatype, and interprets the value as a "
"single character. The constructor accepts an optional string initializer, "
"the length of the string must be exactly one character."
msgstr ""
#: library/ctypes.rst:2194
msgid ""
"Represents the C :c:type:`char *` datatype when it points to a zero-"
"Represents the C :c:expr:`char *` datatype when it points to a zero-"
"terminated string. For a general character pointer that may also point to "
"binary data, ``POINTER(c_char)`` must be used. The constructor accepts an "
"integer address, or a bytes object."
@ -2967,69 +2997,69 @@ msgstr ""
#: library/ctypes.rst:2202
msgid ""
"Represents the C :c:type:`double` datatype. The constructor accepts an "
"Represents the C :c:expr:`double` datatype. The constructor accepts an "
"optional float initializer."
msgstr ""
#: library/ctypes.rst:2208
msgid ""
"Represents the C :c:type:`long double` datatype. The constructor accepts an "
"Represents the C :c:expr:`long double` datatype. The constructor accepts an "
"optional float initializer. On platforms where ``sizeof(long double) == "
"sizeof(double)`` it is an alias to :class:`c_double`."
msgstr ""
#: library/ctypes.rst:2214
msgid ""
"Represents the C :c:type:`float` datatype. The constructor accepts an "
"Represents the C :c:expr:`float` datatype. The constructor accepts an "
"optional float initializer."
msgstr ""
#: library/ctypes.rst:2220
msgid ""
"Represents the C :c:type:`signed int` datatype. The constructor accepts an "
"Represents the C :c:expr:`signed int` datatype. The constructor accepts an "
"optional integer initializer; no overflow checking is done. On platforms "
"where ``sizeof(int) == sizeof(long)`` it is an alias to :class:`c_long`."
msgstr ""
#: library/ctypes.rst:2227
msgid ""
"Represents the C 8-bit :c:type:`signed int` datatype. Usually an alias for :"
"Represents the C 8-bit :c:expr:`signed int` datatype. Usually an alias for :"
"class:`c_byte`."
msgstr ""
#: library/ctypes.rst:2233
msgid ""
"Represents the C 16-bit :c:type:`signed int` datatype. Usually an alias "
"Represents the C 16-bit :c:expr:`signed int` datatype. Usually an alias "
"for :class:`c_short`."
msgstr ""
#: library/ctypes.rst:2239
msgid ""
"Represents the C 32-bit :c:type:`signed int` datatype. Usually an alias "
"Represents the C 32-bit :c:expr:`signed int` datatype. Usually an alias "
"for :class:`c_int`."
msgstr ""
#: library/ctypes.rst:2245
msgid ""
"Represents the C 64-bit :c:type:`signed int` datatype. Usually an alias "
"Represents the C 64-bit :c:expr:`signed int` datatype. Usually an alias "
"for :class:`c_longlong`."
msgstr ""
#: library/ctypes.rst:2251
msgid ""
"Represents the C :c:type:`signed long` datatype. The constructor accepts an "
"Represents the C :c:expr:`signed long` datatype. The constructor accepts an "
"optional integer initializer; no overflow checking is done."
msgstr ""
#: library/ctypes.rst:2257
msgid ""
"Represents the C :c:type:`signed long long` datatype. The constructor "
"Represents the C :c:expr:`signed long long` datatype. The constructor "
"accepts an optional integer initializer; no overflow checking is done."
msgstr ""
#: library/ctypes.rst:2263
msgid ""
"Represents the C :c:type:`signed short` datatype. The constructor accepts "
"Represents the C :c:expr:`signed short` datatype. The constructor accepts "
"an optional integer initializer; no overflow checking is done."
msgstr ""
@ -3043,83 +3073,83 @@ msgstr ""
#: library/ctypes.rst:2281
msgid ""
"Represents the C :c:type:`unsigned char` datatype, it interprets the value "
"Represents the C :c:expr:`unsigned char` datatype, it interprets the value "
"as small integer. The constructor accepts an optional integer initializer; "
"no overflow checking is done."
msgstr ""
#: library/ctypes.rst:2288
msgid ""
"Represents the C :c:type:`unsigned int` datatype. The constructor accepts "
"Represents the C :c:expr:`unsigned int` datatype. The constructor accepts "
"an optional integer initializer; no overflow checking is done. On platforms "
"where ``sizeof(int) == sizeof(long)`` it is an alias for :class:`c_ulong`."
msgstr ""
#: library/ctypes.rst:2295
msgid ""
"Represents the C 8-bit :c:type:`unsigned int` datatype. Usually an alias "
"Represents the C 8-bit :c:expr:`unsigned int` datatype. Usually an alias "
"for :class:`c_ubyte`."
msgstr ""
#: library/ctypes.rst:2301
msgid ""
"Represents the C 16-bit :c:type:`unsigned int` datatype. Usually an alias "
"Represents the C 16-bit :c:expr:`unsigned int` datatype. Usually an alias "
"for :class:`c_ushort`."
msgstr ""
#: library/ctypes.rst:2307
msgid ""
"Represents the C 32-bit :c:type:`unsigned int` datatype. Usually an alias "
"Represents the C 32-bit :c:expr:`unsigned int` datatype. Usually an alias "
"for :class:`c_uint`."
msgstr ""
#: library/ctypes.rst:2313
msgid ""
"Represents the C 64-bit :c:type:`unsigned int` datatype. Usually an alias "
"Represents the C 64-bit :c:expr:`unsigned int` datatype. Usually an alias "
"for :class:`c_ulonglong`."
msgstr ""
#: library/ctypes.rst:2319
msgid ""
"Represents the C :c:type:`unsigned long` datatype. The constructor accepts "
"Represents the C :c:expr:`unsigned long` datatype. The constructor accepts "
"an optional integer initializer; no overflow checking is done."
msgstr ""
#: library/ctypes.rst:2325
msgid ""
"Represents the C :c:type:`unsigned long long` datatype. The constructor "
"Represents the C :c:expr:`unsigned long long` datatype. The constructor "
"accepts an optional integer initializer; no overflow checking is done."
msgstr ""
#: library/ctypes.rst:2331
msgid ""
"Represents the C :c:type:`unsigned short` datatype. The constructor accepts "
"Represents the C :c:expr:`unsigned short` datatype. The constructor accepts "
"an optional integer initializer; no overflow checking is done."
msgstr ""
#: library/ctypes.rst:2337
msgid ""
"Represents the C :c:type:`void *` type. The value is represented as "
"Represents the C :c:expr:`void *` type. The value is represented as "
"integer. The constructor accepts an optional integer initializer."
msgstr ""
#: library/ctypes.rst:2343
msgid ""
"Represents the C :c:type:`wchar_t` datatype, and interprets the value as a "
"Represents the C :c:expr:`wchar_t` datatype, and interprets the value as a "
"single character unicode string. The constructor accepts an optional string "
"initializer, the length of the string must be exactly one character."
msgstr ""
#: library/ctypes.rst:2350
msgid ""
"Represents the C :c:type:`wchar_t *` datatype, which must be a pointer to a "
"Represents the C :c:expr:`wchar_t *` datatype, which must be a pointer to a "
"zero-terminated wide character string. The constructor accepts an integer "
"address, or a string."
msgstr ""
#: library/ctypes.rst:2357
msgid ""
"Represent the C :c:type:`bool` datatype (more accurately, :c:type:`_Bool` "
"Represent the C :c:expr:`bool` datatype (more accurately, :c:expr:`_Bool` "
"from C99). Its value can be ``True`` or ``False``, and the constructor "
"accepts any object that has a truth value."
msgstr ""
@ -3132,8 +3162,8 @@ msgstr ""
#: library/ctypes.rst:2370
msgid ""
"Represents the C :c:type:`PyObject *` datatype. Calling this without an "
"argument creates a ``NULL`` :c:type:`PyObject *` pointer."
"Represents the C :c:expr:`PyObject *` datatype. Calling this without an "
"argument creates a ``NULL`` :c:expr:`PyObject *` pointer."
msgstr ""
#: library/ctypes.rst:2373

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2018-07-04 11:32+0200\n"
"Last-Translator: Julien Palard <julien@palard.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -347,7 +347,7 @@ msgid ""
"Change the definition of a color, taking the number of the color to be "
"changed followed by three RGB values (for the amounts of red, green, and "
"blue components). The value of *color_number* must be between ``0`` and "
"`COLORS - 1`. Each of *r*, *g*, *b*, must be a value between ``0`` and "
"``COLORS - 1``. Each of *r*, *g*, *b*, must be a value between ``0`` and "
"``1000``. When :func:`init_color` is used, all occurrences of that color on "
"the screen immediately change to the new definition. This function is a no-"
"op on most terminals; it is active only if :func:`can_change_color` returns "

View File

@ -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: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2018-07-29 19:08+0200\n"
"Last-Translator: Julien Palard <julien@palard.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -19,12 +19,13 @@ msgid "Custom Python Interpreters"
msgstr "Interpréteurs Python personnalisés"
#: library/custominterp.rst:7
#, fuzzy
msgid ""
"The modules described in this chapter allow writing interfaces similar to "
"Python's interactive interpreter. If you want a Python interpreter that "
"supports some special feature in addition to the Python language, you should "
"look at the :mod:`code` module. (The :mod:`codeop` module is lower-level, "
"used to support compiling a possibly-incomplete chunk of Python code.)"
"used to support compiling a possibly incomplete chunk of Python code.)"
msgstr ""
"Les modules décrits dans ce chapitre permettent d'écrire des interfaces "
"similaires à l'interpréteur interactif de Python. Si vous voulez un "

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-03-18 17:06+0100\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2021-10-28 11:44+0200\n"
"Last-Translator: David GIRAUD <davidgiraud@protonmail.com>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -1124,6 +1124,47 @@ msgstr ""
"Pour qu'un champ d'un type muable soit par défaut initialisé à un nouvel "
"objet pour chaque instance, utilisez une fonction de fabrique :"
#: library/dataclasses.rst:731
msgid "Descriptor-typed fields"
msgstr ""
#: library/dataclasses.rst:733
msgid ""
"Fields that are assigned :ref:`descriptor objects <descriptors>` as their "
"default value have the following special behaviors:"
msgstr ""
#: library/dataclasses.rst:736
msgid ""
"The value for the field passed to the dataclass's ``__init__`` method is "
"passed to the descriptor's ``__set__`` method rather than overwriting the "
"descriptor object."
msgstr ""
#: library/dataclasses.rst:739
msgid ""
"Similarly, when getting or setting the field, the descriptor's ``__get__`` "
"or ``__set__`` method is called rather than returning or overwriting the "
"descriptor object."
msgstr ""
#: library/dataclasses.rst:742
msgid ""
"To determine whether a field contains a default value, ``dataclasses`` will "
"call the descriptor's ``__get__`` method using its class access form (i.e. "
"``descriptor.__get__(obj=None, type=cls)``. If the descriptor returns a "
"value in this case, it will be used as the field's default. On the other "
"hand, if the descriptor raises :exc:`AttributeError` in this situation, no "
"default value will be provided for the field."
msgstr ""
#: library/dataclasses.rst:777
msgid ""
"Note that if a field is annotated with a descriptor type, but is not "
"assigned a descriptor object as its default value, the field will act like a "
"normal field."
msgstr ""
#~ msgid "Module-level decorators, classes, and functions"
#~ msgstr "Décorateurs, classes et fonctions du module"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-05-21 16:37+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2022-05-18 17:37+0200\n"
"Last-Translator: Loc Cosnier <loc.cosnier@pm.me>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -998,7 +998,8 @@ msgid "``date2 = date1 + timedelta``"
msgstr "``date2 = date1 + timedelta``"
#: library/datetime.rst:584
msgid "*date2* is ``timedelta.days`` days removed from *date1*. (1)"
#, fuzzy
msgid "*date2* will be ``timedelta.days`` days after *date1*. (1)"
msgstr ""
"*date2* est décalée de ``timedelta.days`` jours par rapport à *date1*. (1)"
@ -3247,8 +3248,9 @@ msgstr ""
"``offset.hours`` et ``offset.minutes``."
#: library/datetime.rst:2248
#, fuzzy
msgid ""
"Name generated from ``offset=timedelta(0)`` is now plain `'UTC'`, not "
"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\" "
@ -4145,10 +4147,11 @@ msgstr ""
"conversion entre calendriers grégorien proleptique et les autres systèmes."
#: library/datetime.rst:2586
#, fuzzy
msgid ""
"See R. H. van Gent's `guide to the mathematics of the ISO 8601 calendar "
"<https://www.staff.science.uu.nl/~gent0113/calendar/isocalendar.htm>`_ for a "
"good explanation."
"<https://web.archive.org/web/20220531051136/https://webspace.science.uu.nl/"
"~gent0113/calendar/isocalendar.htm>`_ for a good explanation."
msgstr ""
"Voir R. H. van Gent `guide des mathématiques du calendrier ISO 8601 <https://"
"www.staff.science.uu.nl/~gent0113/calendar/isocalendar.htm>`_ pour une bonne "

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-05-21 16:37+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2018-10-07 18:55+0200\n"
"Last-Translator: \n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -24,8 +24,9 @@ msgid "**Source code:** :source:`Lib/decimal.py`"
msgstr "**Code source :** :source:`Lib/decimal.py`"
#: library/decimal.rst:33
#, fuzzy
msgid ""
"The :mod:`decimal` module provides support for fast correctly-rounded "
"The :mod:`decimal` module provides support for fast correctly rounded "
"decimal floating point arithmetic. It offers several advantages over the :"
"class:`float` datatype:"
msgstr ""
@ -206,9 +207,10 @@ msgstr ""
"surveiller."
#: library/decimal.rst:116
#, fuzzy
msgid ""
"IBM's General Decimal Arithmetic Specification, `The General Decimal "
"Arithmetic Specification <http://speleotrove.com/decimal/decarith.html>`_."
"Arithmetic Specification <https://speleotrove.com/decimal/decarith.html>`_."
msgstr ""
"La spécification d'IBM sur l'arithmétique décimale : `The General Decimal "
"Arithmetic Specification <http://speleotrove.com/decimal/decarith.html>`_."
@ -685,11 +687,11 @@ msgstr ""
#: library/decimal.rst:579
msgid ""
"Note `Decimal.from_float(0.1)` is not the same as `Decimal('0.1')`. Since "
"0.1 is not exactly representable in binary floating point, the value is "
"stored as the nearest representable value which is `0x1.999999999999ap-4`. "
"That equivalent value in decimal is "
"`0.1000000000000000055511151231257827021181583404541015625`."
"Note ``Decimal.from_float(0.1)`` is not the same as ``Decimal('0.1')``. "
"Since 0.1 is not exactly representable in binary floating point, the value "
"is stored as the nearest representable value which is "
"``0x1.999999999999ap-4``. That equivalent value in decimal is "
"``0.1000000000000000055511151231257827021181583404541015625``."
msgstr ""
#: library/decimal.rst:585
@ -735,8 +737,8 @@ msgid ""
"Return :const:`True` if the argument is a (quiet or signaling) NaN and :"
"const:`False` otherwise."
msgstr ""
"Renvoie :const:`True` si l'argument est un NaN (signalétique ou "
"silencieux) et :const:`False` sinon."
"Renvoie :const:`True` si l'argument est un NaN (signalétique ou silencieux) "
"et :const:`False` sinon."
#: library/decimal.rst:632
msgid ""
@ -1405,7 +1407,8 @@ msgid "Divides two numbers and returns the integer part of the result."
msgstr "Renvoie la partie entière de la division entre deux nombres."
#: library/decimal.rst:1196
msgid "Returns `e ** x`."
#, fuzzy
msgid "Returns ``e ** x``."
msgstr "Renvoie `e ** x`."
#: library/decimal.rst:1201
@ -1427,8 +1430,8 @@ msgstr "Renvoie ``True`` si *x* est infini et ``False`` sinon."
#: library/decimal.rst:1221
msgid "Returns ``True`` if *x* is a qNaN or sNaN; otherwise returns ``False``."
msgstr ""
"Renvoie ``True`` si *x* est un NaN (silencieux ou signalétique) et "
"``False`` sinon."
"Renvoie ``True`` si *x* est un NaN (silencieux ou signalétique) et ``False`` "
"sinon."
#: library/decimal.rst:1226
msgid ""
@ -1437,8 +1440,7 @@ msgstr ""
#: library/decimal.rst:1231
msgid "Returns ``True`` if *x* is a quiet NaN; otherwise returns ``False``."
msgstr ""
"Renvoie ``True`` si *x* est un NaN silencieux et ``False`` sinon."
msgstr "Renvoie ``True`` si *x* est un NaN silencieux et ``False`` sinon."
#: library/decimal.rst:1236
msgid "Returns ``True`` if *x* is negative; otherwise returns ``False``."
@ -1447,8 +1449,7 @@ msgstr "Renvoie ``True`` si *x* est négatif et ``False`` sinon."
#: library/decimal.rst:1241
msgid ""
"Returns ``True`` if *x* is a signaling NaN; otherwise returns ``False``."
msgstr ""
"Renvoie ``True`` si *x* est un NaN signalétique et ``False`` sinon."
msgstr "Renvoie ``True`` si *x* est un NaN signalétique et ``False`` sinon."
#: library/decimal.rst:1246
msgid "Returns ``True`` if *x* is subnormal; otherwise returns ``False``."
@ -1542,7 +1543,7 @@ msgid ""
"With two arguments, compute ``x**y``. If ``x`` is negative then ``y`` must "
"be integral. The result will be inexact unless ``y`` is integral and the "
"result is finite and can be expressed exactly in 'precision' digits. The "
"rounding mode of the context is used. Results are always correctly-rounded "
"rounding mode of the context is used. Results are always correctly rounded "
"in the Python version."
msgstr ""
@ -1554,9 +1555,9 @@ msgstr ""
#: library/decimal.rst:1364
msgid ""
"The C module computes :meth:`power` in terms of the correctly-rounded :meth:"
"The C module computes :meth:`power` in terms of the correctly rounded :meth:"
"`exp` and :meth:`ln` functions. The result is well-defined but only \"almost "
"always correctly-rounded\"."
"always correctly rounded\"."
msgstr ""
#: library/decimal.rst:1369
@ -2107,8 +2108,8 @@ msgid ""
"to handle the :meth:`quantize` step:"
msgstr ""
"Lors du développement d'applications en virgule fixe, il est pratique de "
"définir des fonctions pour gérer cette étape de quantification "
"par :meth:`quantize` :"
"définir des fonctions pour gérer cette étape de quantification par :meth:"
"`quantize` :"
#: library/decimal.rst:2052
msgid ""
@ -2207,7 +2208,7 @@ msgid ""
"A. Yes. In the CPython and PyPy3 implementations, the C/CFFI versions of "
"the decimal module integrate the high speed `libmpdec <https://www.bytereef."
"org/mpdecimal/doc/libmpdec/index.html>`_ library for arbitrary precision "
"correctly-rounded decimal floating point arithmetic [#]_. ``libmpdec`` uses "
"correctly rounded decimal floating point arithmetic [#]_. ``libmpdec`` uses "
"`Karatsuba multiplication <https://en.wikipedia.org/wiki/"
"Karatsuba_algorithm>`_ for medium-sized numbers and the `Number Theoretic "
"Transform <https://en.wikipedia.org/wiki/"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-03-18 17:06+0100\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2022-10-18 12:28+0200\n"
"Last-Translator: Loc Cosnier <loc.cosnier@pm.me>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -519,14 +519,14 @@ msgstr ""
#: library/difflib.rst:357
msgid ""
"`Pattern Matching: The Gestalt Approach <http://www.drdobbs.com/database/"
"`Pattern Matching: The Gestalt Approach <https://www.drdobbs.com/database/"
"pattern-matching-the-gestalt-approach/184407970>`_"
msgstr ""
#: library/difflib.rst:357
msgid ""
"Discussion of a similar algorithm by John W. Ratcliff and D. E. Metzener. "
"This was published in `Dr. Dobb's Journal <http://www.drdobbs.com/>`_ in "
"This was published in `Dr. Dobb's Journal <https://www.drdobbs.com/>`_ in "
"July, 1988."
msgstr ""

File diff suppressed because it is too large Load Diff

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-05-21 16:37+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2021-09-12 09:38-0400\n"
"Last-Translator: Edith Viau <info@eviau.net>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -789,7 +789,7 @@ msgstr ""
#: library/doctest.rst:567
msgid ""
"When specified, doctests expecting exceptions pass so long as an exception "
"of the expected type is raised, even if the details (message and fully-"
"of the expected type is raised, even if the details (message and fully "
"qualified exception name) don't match."
msgstr ""
@ -797,7 +797,7 @@ msgstr ""
msgid ""
"For example, an example expecting ``ValueError: 42`` will pass if the actual "
"exception raised is ``ValueError: 3*14``, but will fail if, say, a :exc:"
"`TypeError` is raised instead. It will also ignore any fully-qualified name "
"`TypeError` is raised instead. It will also ignore any fully qualified name "
"included before the exception class, which can vary between implementations "
"and versions of Python and the code/libraries in use. Hence, all three of "
"these variations will work with the flag specified:"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+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"
@ -120,7 +120,7 @@ msgstr ""
msgid ""
"Note that this method is provided as a convenience and may not always format "
"the message the way you want. For example, by default it does not do the "
"mangling of lines that begin with ``From`` that is required by the unix mbox "
"mangling of lines that begin with ``From`` that is required by the Unix mbox "
"format. For more flexibility, instantiate a :class:`~email.generator."
"Generator` instance and use its :meth:`~email.generator.Generator.flatten` "
"method directly. For example::"
@ -158,7 +158,7 @@ msgstr ""
msgid ""
"Note that this method is provided as a convenience and may not always format "
"the message the way you want. For example, by default it does not do the "
"mangling of lines that begin with ``From`` that is required by the unix mbox "
"mangling of lines that begin with ``From`` that is required by the Unix mbox "
"format. For more flexibility, instantiate a :class:`~email.generator."
"BytesGenerator` instance and use its :meth:`~email.generator.BytesGenerator."
"flatten` method directly. For example::"
@ -351,7 +351,7 @@ msgid ""
"In a model generated from bytes, any header values that (in contravention of "
"the RFCs) contain non-ASCII bytes will, when retrieved through this "
"interface, be represented as :class:`~email.header.Header` objects with a "
"charset of `unknown-8bit`."
"charset of ``unknown-8bit``."
msgstr ""
#: library/email.compat32-message.rst:306

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+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"
@ -83,7 +83,7 @@ msgid ""
"defaults to the value of the :attr:`~email.policy.Policy.mangle_from_` "
"setting of the *policy* (which is ``True`` for the :data:`~email.policy."
"compat32` policy and ``False`` for all others). *mangle_from_* is intended "
"for use when messages are stored in unix mbox format (see :mod:`mailbox` and "
"for use when messages are stored in Unix mbox format (see :mod:`mailbox` and "
"`WHY THE CONTENT-LENGTH FORMAT IS BAD <https://www.jwz.org/doc/content-"
"length.html>`_)."
msgstr ""

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2019-09-06 13:49+0200\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -192,7 +192,7 @@ msgid ""
"representing that date. If the timezone of the input date is specified as "
"``-0000`` (indicating it is in UTC but contains no information about the "
"source timezone), then :attr:`.datetime` will be a naive :class:`~datetime."
"datetime`. If a specific timezone offset is found (including `+0000`), "
"datetime`. If a specific timezone offset is found (including ``+0000``), "
"then :attr:`.datetime` will contain an aware ``datetime`` that uses :class:"
"`datetime.timezone` to record the timezone offset."
msgstr ""

File diff suppressed because it is too large Load Diff

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2021-02-06 18:15+0100\n"
"Last-Translator: Antoine Wecxsteen\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -142,8 +142,9 @@ msgstr ""
"Python 3."
#: library/functools.rst:122
#, fuzzy
msgid ""
"A comparison function is any callable that accept two arguments, compares "
"A comparison function is any callable that accepts two arguments, compares "
"them, and returns a negative number for less-than, zero for equality, or a "
"positive number for greater-than. A key function is a callable that accepts "
"one argument and returns another value to be used as the sort key."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-03-18 17:06+0100\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2021-05-23 15:53-0400\n"
"Last-Translator: Jules Lasne <jules.lasne@gmail.com>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -852,12 +852,13 @@ msgstr ""
"traduite, contrairement aux chaînes ``'mylog.txt'`` et ``'w'``."
#: library/gettext.rst:527
#, fuzzy
msgid ""
"There are a few tools to extract the strings meant for translation. The "
"original GNU :program:`gettext` only supported C or C++ source code but its "
"extended version :program:`xgettext` scans code written in a number of "
"languages, including Python, to find strings marked as translatable. `Babel "
"<http://babel.pocoo.org/>`__ is a Python internationalization library that "
"<https://babel.pocoo.org/>`__ is a Python internationalization library that "
"includes a :file:`pybabel` script to extract and compile message catalogs. "
"François Pinard's program called :program:`xpot` does a similar job and is "
"available as part of his `po-utils package <https://github.com/pinard/po-"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-05-21 16:37+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2022-02-11 13:53+0100\n"
"Last-Translator: Arnaud Fréalle <arnaud.frealle@gmail.com>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -70,7 +70,7 @@ msgstr ""
#: library/glob.rst:44
#, fuzzy
msgid ""
"Return a possibly-empty list of path names that match *pathname*, which must "
"Return a possibly empty list of path names that match *pathname*, which must "
"be a string containing a path specification. *pathname* can be either "
"absolute (like :file:`/usr/src/Python-1.5/Makefile`) or relative (like :file:"
"`../../Tools/\\*/\\*.gif`), and can contain shell-style wildcards. Broken "

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-04-05 10:05+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+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"
@ -114,35 +114,34 @@ msgstr ""
#: library/grp.rst:46
msgid ""
"Since Python 3.6 the support of non-integer arguments like floats or strings "
"in :func:`getgrgid` is deprecated."
":exc:`TypeError` is raised for non-integer arguments like floats or strings."
msgstr ""
#: library/grp.rst:52
#: library/grp.rst:51
msgid ""
"Return the group database entry for the given group name. :exc:`KeyError` is "
"raised if the entry asked for cannot be found."
msgstr ""
#: library/grp.rst:58
#: library/grp.rst:57
msgid "Return a list of all available group entries, in arbitrary order."
msgstr ""
#: library/grp.rst:64
#: library/grp.rst:63
msgid "Module :mod:`pwd`"
msgstr "Module :mod:`pwd`"
#: library/grp.rst:64
#: library/grp.rst:63
#, fuzzy
msgid "An interface to the user database, similar to this."
msgstr "Interface pour la base de données des groupes, similaire à celle-ci."
#: library/grp.rst:66
#: library/grp.rst:65
#, fuzzy
msgid "Module :mod:`spwd`"
msgstr "Module :mod:`pwd`"
#: library/grp.rst:67
#: library/grp.rst:66
#, fuzzy
msgid "An interface to the shadow password database, similar to this."
msgstr ""

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-05-21 16:37+0200\n"
"POT-Creation-Date: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2020-04-27 22:47+0200\n"
"Last-Translator: Jules Lasne <jules.lasne@gmail.com>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -658,9 +658,10 @@ msgstr ""
"BLAKE2s, 0 en mode séquentiel)."
#: library/hashlib.rst:393
#, fuzzy
msgid ""
"*last_node*: boolean indicating whether the processed node is the last one "
"(`False` for sequential mode)."
"(``False`` for sequential mode)."
msgstr ""
"*last_node*: booléen indiquant si le nœud traité est le dernier (`False` "
"pour le mode séquentiel)."
@ -925,9 +926,10 @@ msgstr ""
"utilisée dans le protocole stoppe immédiatement ce genre d'attaque."
#: library/hashlib.rst:629
#, fuzzy
msgid ""
"(`The Skein Hash Function Family <http://www.skein-hash.info/sites/default/"
"files/skein1.3.pdf>`_, p. 21)"
"(`The Skein Hash Function Family <https://www.schneier.com/wp-content/"
"uploads/2016/02/skein.pdf>`_, p. 21)"
msgstr ""
"(`The Skein Hash Function Family <http://www.skein-hash.info/sites/default/"
"files/skein1.3.pdf>`_, p. 21, article en anglais)"

View File

@ -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: 2022-10-18 15:46+0200\n"
"PO-Revision-Date: 2021-04-28 21:10+0200\n"
"Last-Translator: Dimitri Merejkowsky <dimitri@dmerej.info>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -124,8 +124,9 @@ msgstr ""
"qui ne sont pas dans la table ASCII, y compris des octets NUL."
#: library/hmac.rst:72
#, fuzzy
msgid ""
"When comparing the output of :meth:`digest` to an externally-supplied digest "
"When comparing the output of :meth:`digest` to an externally supplied digest "
"during a verification routine, it is recommended to use the :func:"
"`compare_digest` function instead of the ``==`` operator to reduce the "
"vulnerability to timing attacks."
@ -147,8 +148,9 @@ msgstr ""
"d'autres environnements ne gérant pas les données binaires."
#: library/hmac.rst:86
#, fuzzy
msgid ""
"When comparing the output of :meth:`hexdigest` to an externally-supplied "
"When comparing the output of :meth:`hexdigest` to an externally supplied "
"digest during a verification routine, it is recommended to use the :func:"
"`compare_digest` function instead of the ``==`` operator to reduce the "
"vulnerability to timing attacks."

Some files were not shown because too many files have changed in this diff Show More