Compare commits

...

6 Commits

Author SHA1 Message Date
Julien Palard 255d4129f5
sed -i 's/\([^m]\)muable/\1mutable/' *.po */*.po 2023-12-05 16:25:05 +01:00
Julien Palard af33329364
Upgrade woodpecker config
- Pipeline changed its name to steps.
- Default checkout was target branch, conflicting with our fetch.
- Spliting fetch and actual tests for readability.
- Cannot split apt install as each step runs in a separated
- container (clean way would be to create an image with hunspell in it).

Also I don't remember why there's those git things here, so let's try
without…
2023-12-01 22:51:35 +01:00
Jérémy TREMBLAY bd6abaadbb Traduction de library/pkgutil.po (#215)
Closes #214

Co-authored-by: Jérémy TREMBLAY <jeremy.tremblay@etu.uca.fr>
Reviewed-on: AFPy/python-docs-fr#215
Reviewed-by: Christophe Nanteuil <christophenan@noreply.localhost>
Co-authored-by: Jérémy TREMBLAY <jeremy-tremblay@outlook.fr>
Co-committed-by: Jérémy TREMBLAY <jeremy-tremblay@outlook.fr>
2023-11-26 20:03:13 +00:00
Julien Palard 8d5ea7d2ec FIX: Incohérences de références de terme dans le message traduit. (#232)
J'ai tenté un build et j'ai eu:

```
Warning, treated as error:
/home/mdk/clones/python/python-docs-fr/venv/cpython/Doc/library/shutil.rst:53:ncohérences de références de terme dans le message traduit. Original : [], traduit : [':term:`objets simili-chemin <path-like object>`']
make[1]: *** [Makefile:53 : build] Erreur 2
make[1] : on quitte le répertoire « /home/mdk/clones/python/python-docs-fr/venv/cpython/Doc »
make: *** [Makefile:92 : all] Erreur 2
```

c'est dommage, c'était bien avec un lien.

Reviewed-on: AFPy/python-docs-fr#232
Reviewed-by: Christophe Nanteuil <christophenan@noreply.localhost>
Co-authored-by: Julien Palard <julien@palard.fr>
Co-committed-by: Julien Palard <julien@palard.fr>
2023-11-26 15:25:33 +00:00
Christophe Nanteuil d8ea8e2c72 fin du dossier extending (#176)
Reviewed-on: AFPy/python-docs-fr#176
Reviewed-by: Julien Palard <julien@palard.fr>
Co-authored-by: Christophe Nanteuil <christophe.nanteuil@gmail.com>
Co-committed-by: Christophe Nanteuil <christophe.nanteuil@gmail.com>
2023-11-26 15:24:37 +00:00
Mathieu Dupuy ac7b434dac library/zimport.po: fuzzies (#172)
quelques amélioarations aléatoires qui me sont venus à l'esprit en tombant sur la page en français

Reviewed-on: AFPy/python-docs-fr#172
Reviewed-by: Julien Palard <julien@palard.fr>
Co-authored-by: Mathieu Dupuy <deronnax@gmail.com>
Co-committed-by: Mathieu Dupuy <deronnax@gmail.com>
2023-11-26 15:18:17 +00:00
34 changed files with 334 additions and 181 deletions

View File

@ -1,13 +1,37 @@
---
pipeline:
# `make verifs` only checks changed files, so it make sense only on
# pull requests.
# Also we're using `branch: "$CI_COMMIT_SOURCE_BRANCH"` because the
# default branch name is the target branch, conflicting with the fact
# the Makefile tries to compare the current branch to the target
# branch...
when:
event: pull_request
clone:
git:
image: woodpeckerci/plugin-git
pull: true
settings:
branch: ${CI_COMMIT_SOURCE_BRANCH}
steps:
fetch target branch:
image: python
commands:
- BRANCH="$(make print-BRANCH)"
- git fetch origin --no-tags +refs/heads/$BRANCH
- git branch $BRANCH origin/$BRANCH
- git branch -va
test:
image: python
commands:
- apt-get update
- apt-get install -y hunspell hunspell-fr-comprehensive
- python3 -m pip install -r requirements.txt
- BRANCH="$(grep ^BRANCH Makefile | awk '{print $3}')"
- git fetch origin --no-tags +refs/heads/$BRANCH
- 'git branch $BRANCH origin/$BRANCH ||:'
- make diff
- make verifs

View File

@ -604,7 +604,7 @@ list comprehension liste en compréhension (liste en intension est
little-endian, big-endian `petit-boutiste, gros-boutiste
<https://fr.wikipedia.org/wiki/Endianness>`_
mixin type type de mélange
mutable muable
mutable `mutable <https://git.afpy.org/AFPy/python-docs-fr/issues/123>`_
namespace espace de nommage
(sauf pour le XML où c'est espace de noms)
parameter paramètre

View File

@ -192,3 +192,11 @@ clean:
find -name '*.mo' -delete
@echo "Cleaning build directory"
$(MAKE) -C venv/cpython/Doc/ clean
.PHONY: diff
diff:
@echo "Files changed between $(BRANCH) and HEAD:"
@echo $(shell git diff --name-only --diff-filter=d $(BRANCH))
print-%:
@echo $($*)

View File

@ -102,7 +102,7 @@ msgstr ""
"Néanmoins, quand une structure :c:type:`Py_buffer` est en cours de "
"remplissage, le tampon sous-jacent est verrouillé pour permettre à "
"l'appelant d'utiliser le tampon par la suite, même à l'intérieur d'un bloc :"
"c:type:`Py_BEGIN_ALLOW_THREADS`, sans risques de voir des données muables se "
"c:type:`Py_BEGIN_ALLOW_THREADS`, sans risques de voir des données mutables se "
"faire redimensionner ou supprimer. En conséquence, **il vous appartient "
"d'appeler** :c:func:`PyBuffer_Release` après avoir terminé de traiter les "
"données (ou après une interruption prématurée du traitement de ces données)."
@ -229,7 +229,7 @@ msgid ""
"null bytes. Unicode objects are converted to C strings using ``'utf-8'`` "
"encoding."
msgstr ""
"La même chose que ``s*``, mais n'accepte pas les objets muables. Le résultat "
"La même chose que ``s*``, mais n'accepte pas les objets mutables. Le résultat "
"est stocké dans deux variables C, la première est un pointeur vers une "
"chaîne de caractères C, la seconde contient sa taille. La chaîne de "
"caractères peut contenir des octets NULL. Les objets Unicode sont convertis "
@ -1373,7 +1373,7 @@ msgstr ""
#~ "d'octets <bytes-like object>` en lecture seule, et définissent un "
#~ "pointeur à la place d'une structure tampon. Ils fonctionnent en vérifiant "
#~ "que le champ :c:member:`PyBufferProcs.bf_releasebuffer` de l'objet est "
#~ "*NULL*, ce qui n'autorise pas les objets muables tels que :class:"
#~ "*NULL*, ce qui n'autorise pas les objets mutables tels que :class:"
#~ "`bytearray`."
#~ msgid ""

2
dict
View File

@ -122,8 +122,6 @@ mersenne
mertz
Monty
muabilité
muable
muables
multiensemble
multiensembles
mutex

View File

@ -6,14 +6,14 @@ msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-07-21 14:55+0200\n"
"PO-Revision-Date: 2021-12-11 12:46+0100\n"
"Last-Translator: Julien Palard <julien@palard.fr>\n"
"PO-Revision-Date: 2023-07-28 22:22+0200\n"
"Last-Translator: Christophe Nanteuil <christophe.nanteuil@gmail.com>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.2.3\n"
"X-Generator: Poedit 3.2.2\n"
#: extending/building.rst:7
msgid "Building C and C++ Extensions"
@ -28,7 +28,6 @@ msgstr ""
"Linux, un ``.pyd`` sur Windows), qui expose une *fonction d'initialisation*."
#: extending/building.rst:12
#, fuzzy
msgid ""
"To be importable, the shared library must be available on :envvar:"
"`PYTHONPATH`, and must be named after the module name, with an appropriate "
@ -45,7 +44,6 @@ 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` "
"instance. See :ref:`initializing-modules` for details."
@ -88,7 +86,6 @@ msgstr ""
"library\"* dans la :pep:`489` pour plus d'informations."
#: extending/building.rst:49
#, fuzzy
msgid "Building C and C++ Extensions with distutils"
msgstr "Construire les extensions C et C++ avec *distutils*"
@ -113,7 +110,7 @@ msgstr ""
#: extending/building.rst:73
msgid "With this :file:`setup.py`, and a file :file:`demo.c`, running ::"
msgstr "Avec ce :file:`setup.py` et un fichier :file:`demo.c`, lancer ::"
msgstr "Avec ce :file:`setup.py` et un fichier :file:`demo.c`, lancer ::"
#: extending/building.rst:77
msgid ""
@ -122,10 +119,10 @@ msgid ""
"will end up in a subdirectory :file:`build/lib.system`, and may have a name "
"like :file:`demo.so` or :file:`demo.pyd`."
msgstr ""
"compilera :file:`demo.c`, et produira un module d'extension nommé ``demo`` "
"dans le dossier :file:`build`. En fonction du système, le fichier du module "
"peut se retrouver dans :file:`build/lib.system`, et son nom peut être :file:"
"`demo.py` ou :file:`demo.pyd`."
"compile :file:`demo.c` et produit un module d'extension nommé ``demo`` dans "
"le dossier :file:`build`. En fonction du système, le fichier du module peut "
"se retrouver dans :file:`build/lib.system`, et son nom peut être :file:`demo."
"py` ou :file:`demo.pyd`."
#: extending/building.rst:82
msgid ""
@ -189,7 +186,7 @@ msgstr ""
"paquets. En ce qui concerne l'extension, sont définis quelques macros "
"préprocesseur, dossiers pour les en-têtes et bibliothèques. En fonction du "
"compilateur, *distutils* peut donner ces informations de manière différente. "
"Par exemple, sur Unix, ça peut ressembler aux commandes ::"
"Par exemple, sur Unix, ça peut ressembler aux commandes ::"
#: extending/building.rst:139
msgid ""
@ -216,14 +213,14 @@ msgid ""
"End-users will typically want to install the module, they do so by running ::"
msgstr ""
"Typiquement, les utilisateurs vont vouloir installer le module, ils le font "
"en exécutant ::"
"en exécutant ::"
#: extending/building.rst:154
msgid ""
"Module maintainers should produce source packages; to do so, they run ::"
msgstr ""
"Les mainteneurs de modules voudront produire des paquets source, pour ce "
"faire ils exécuteront ::"
"faire ils exécuteront ::"
#: extending/building.rst:158
msgid ""
@ -232,8 +229,8 @@ msgid ""
"`manifest` for details."
msgstr ""
"Dans certains cas, des fichiers supplémentaires doivent être inclus dans une "
"distribution source : c'est possible via un fichier :file:`MANIFEST.in`, c."
"f. :ref:`manifest`."
"distribution source : c'est possible via un fichier :file:`MANIFEST.in`, "
"voir :ref:`manifest` pour les détails."
#: extending/building.rst:161
msgid ""

View File

@ -6,14 +6,14 @@ msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
"PO-Revision-Date: 2023-02-16 16:53+0100\n"
"Last-Translator: Antoine <antoine.venier@hotmail.fr>\n"
"PO-Revision-Date: 2023-07-28 22:36+0200\n"
"Last-Translator: Christophe Nanteuil <christophe.nanteuil@gmail.com>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.3\n"
"X-Generator: Poedit 3.2.2\n"
#: extending/embedding.rst:8
msgid "Embedding Python in Another Application"
@ -275,7 +275,7 @@ msgstr ""
"Bien que le programme soit plutôt gros pour ses fonctionnalités, la plupart "
"du code n'est que conversion de données entre Python et C, aussi que pour "
"rapporter les erreurs. La partie intéressante, qui concerne l'intégration de "
"Python débute par ::"
"Python débute par ::"
#: extending/embedding.rst:178
msgid ""
@ -408,7 +408,7 @@ msgid ""
"directly useful to you:"
msgstr ""
"Pour trouver les bonnes options de compilateur et *linker*, vous pouvez "
"exécuter le script :file:`python(X.Y)-config` généré durant l'installation "
"exécuter le script :file:`python{X.Y}-config` généré durant l'installation "
"(un script :file:`python3-config` peut aussi être disponible). Ce script a "
"quelques options, celles-ci vous seront utiles :"

View File

@ -6,13 +6,14 @@ msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-07-21 14:55+0200\n"
"PO-Revision-Date: 2020-06-28 15:18+0200\n"
"Last-Translator: Julien Palard <julien@palard.fr>\n"
"PO-Revision-Date: 2023-07-28 22:32+0200\n"
"Last-Translator: Christophe Nanteuil <christophe.nanteuil@gmail.com>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 3.2.2\n"
#: extending/windows.rst:8
msgid "Building C and C++ Extensions on Windows"
@ -44,7 +45,7 @@ msgstr ""
"Les auteurs de modules sont invités à utiliser l'approche *distutils* pour "
"construire des modules d'extension, au lieu de celle décrite dans cette "
"section. Vous aurez toujours besoin du compilateur C utilisé pour construire "
"Python ; typiquement Microsoft Visual C++."
"Python ; typiquement Microsoft Visual C++."
#: extending/windows.rst:24
msgid ""
@ -57,7 +58,7 @@ msgid ""
msgstr ""
"Cette page mentionne plusieurs noms de fichiers comprenant un numéro de "
"version Python encodé. Ces noms de fichiers sont construits sous le format "
"de version ``XY`` ; en pratique, ``'X'`` représente le numéro de version "
"de version ``XY`` ; en pratique, ``'X'`` représente le numéro de version "
"majeure et ``'Y'`` représente le numéro de version mineure de la version "
"Python avec laquelle vous travaillez. Par exemple, si vous utilisez Python "
"2.2.1, ``XY`` correspond à ``22``."
@ -67,7 +68,6 @@ msgid "A Cookbook Approach"
msgstr "Une approche \"recette de cuisine\""
#: extending/windows.rst:36
#, fuzzy
msgid ""
"There are two approaches to building extension modules on Windows, just as "
"there are on Unix: use the :mod:`distutils` package to control the build "
@ -79,9 +79,9 @@ msgid ""
"library module."
msgstr ""
"Il y a deux approches lorsque l'on construit des modules d'extension sur "
"Windows, tout comme sur Unix : utiliser le paquet :mod:`distutils` pour "
"Windows, tout comme sur Unix : utiliser le paquet :mod:`distutils` pour "
"contrôler le processus de construction, ou faire les choses manuellement. "
"L'approche *distutils* fonctionne bien pour la plupart des extensions ; la "
"L'approche *distutils* fonctionne bien pour la plupart des extensions ; la "
"documentation pour utiliser :mod:`distutils` pour construire et empaqueter "
"les modules d'extension est disponible dans :ref:`distutils-index`. Si vous "
"considérez que vous avez réellement besoin de faire les choses manuellement, "
@ -131,10 +131,10 @@ msgid ""
"data."
msgstr ""
"Sur Windows, un fichier bibliothèque de liens dynamiques (:file:`.dll`) n'a "
"pas de références paresseuses. A la place, un accès aux fonctions ou données "
"pas de références paresseuses. À la place, un accès aux fonctions ou données "
"passe par une table de conversion. Cela est fait pour que le code DLL ne "
"doive pas être réarrangé à l'exécution pour renvoyer à la mémoire du "
"programme ; à la place, le code utilise déjà la table de conversion DLL, et "
"programme ; à la place, le code utilise déjà la table de conversion DLL, et "
"cette table est modifiée à l'exécution pour pointer vers les fonctions et "
"données."
@ -151,7 +151,7 @@ msgstr ""
"contient du code venant de plusieurs fichiers objets (:file:`.o`). Durant "
"l'étape de liaison pour créer un fichier objet partagé (:file:`.so`), le "
"lieur peut informer qu'il ne sait pas où un identificateur est défini. Le "
"lieur le cherchera dans les fichiers objet dans les bibliothèques ; s'il le "
"lieur le cherchera dans les fichiers objet dans les bibliothèques ; s'il le "
"trouve, il inclura tout le code provenant de ce fichier objet."
#: extending/windows.rst:76
@ -169,7 +169,7 @@ msgid ""
msgstr ""
"Sur Windows, il y a deux types de bibliothèques, une bibliothèque statique "
"et une bibliothèque d'importation (toutes deux appelées :file:`.lib`). Une "
"bibliothèque statique est comme un fichier Unix :file:`.a` ; elle contient "
"bibliothèque statique est comme un fichier Unix :file:`.a` ; elle contient "
"du code pouvant être inclus si nécessaire. Une bibliothèque d'importation "
"est uniquement utilisée pour rassurer le lieur qu'un certain identificateur "
"est légal, et sera présent dans le programme quand la DLL est chargée. Comme "
@ -193,10 +193,10 @@ msgstr ""
"Supposons que vous construisez deux modules de chargement dynamiques, B et "
"C, qui ne devraient pas partager un autre bloc de code avec A. Sur Unix, "
"vous ne transmettrez pas :file:`A.a` au lieur pour :file:`B.so` et :file:`C."
"so` ; cela le ferait être inclus deux fois, pour que B et C aient chacun "
"so` ; cela le ferait être inclus deux fois, pour que B et C aient chacun "
"leur propre copie. Sur Windows, construire :file:`A.dll` construira aussi :"
"file:`A.lib`. Vous transmettez :file:`A.lib` au lieur pour B et C. :file:`A."
"lib` ne contient pas de code ; il contient uniquement des informations qui "
"lib` ne contient pas de code ; il contient uniquement des informations qui "
"seront utilisées lors de l'exécution pour accéder au code de A."
#: extending/windows.rst:94
@ -207,23 +207,22 @@ msgid ""
"create a separate copy."
msgstr ""
"Sur Windows, utiliser une bibliothèque d'importation est comme utiliser "
"``import spam``; cela vous donne accès aux noms des spams, mais ne crée par "
"``import spam`` ; cela vous donne accès aux noms des spams, mais ne crée par "
"de copie séparée. Sur Unix, se lier à une bibliothèque est plus comme ``from "
"spam import *`` ; cela crée une copie séparée."
"spam import *`` ; cela crée une copie séparée."
#: extending/windows.rst:103
msgid "Using DLLs in Practice"
msgstr "Utiliser les DLL en pratique"
#: extending/windows.rst:108
#, fuzzy
msgid ""
"Windows Python is built in Microsoft Visual C++; using other compilers may "
"or may not work. The rest of this section is MSVC++ specific."
msgstr ""
"Le Python de Windows est construit en Microsoft Visual C++ ; utiliser "
"d'autres compilateurs pourrait fonctionner, ou pas (cependant Borland a "
"l'air de fonctionner). Le reste de cette section est spécifique à MSVC++."
"Le Python de Windows est construit en Microsoft Visual C++ ; utiliser "
"d'autres compilateurs pourrait fonctionner, ou pas. Le reste de cette "
"section est spécifique à MSVC++."
#: extending/windows.rst:111
msgid ""
@ -242,7 +241,7 @@ msgid ""
"functions (such as :c:func:`PyArg_ParseTuple`), but it does know how to find "
"the Python code thanks to :file:`pythonXY.lib`."
msgstr ""
"La première commande a créé trois fichiers : :file:`spam.obj`, :file:`spam."
"La première commande a créé trois fichiers : :file:`spam.obj`, :file:`spam."
"dll` et :file:`spam.lib`. :file:`Spam.dll` ne contient pas de fonctions "
"Python (telles que :c:func:`PyArg_ParseTuple`), mais il sait comment trouver "
"le code Python grâce à :file:`pythonXY.lib`."

View File

@ -820,7 +820,7 @@ msgid ""
msgstr ""
"Les *n*-uplets sont immuables, ce qui signifie que lorsqu'un *n*-uplet a été "
"créé, vous ne pouvez remplacer aucun de ses éléments par une nouvelle "
"valeur. Les listes sont muables, ce qui signifie que vous pouvez toujours "
"valeur. Les listes sont mutables, ce qui signifie que vous pouvez toujours "
"modifier les éléments d'une liste. Seuls des éléments immuables peuvent être "
"utilisés comme clés de dictionnaires, et donc de ``tuple`` et ``list`` seul "
"des *n*-uplets peuvent être utilisés comme clés."
@ -922,7 +922,7 @@ msgid ""
msgstr ""
"L'implémentation de la table de hachage des dictionnaires utilise une valeur "
"de hachage calculée à partir de la valeur de la clé pour trouver la clé elle-"
"même. Si la clé était un objet muable, sa valeur peut changer, et donc son "
"même. Si la clé était un objet mutable, sa valeur peut changer, et donc son "
"hachage pourrait également changer. Mais toute personne modifiant l'objet "
"clé ne peut pas dire qu'elle a été utilisée comme une clé de dictionnaire. "
"Il ne peut déplacer l'entrée dans le dictionnaire. Ainsi, lorsque vous "
@ -975,7 +975,7 @@ msgid ""
"copying code would run into an infinite loop."
msgstr ""
"Faire une copie lors de l'utilisation d'une liste en tant que clé. Cela ne "
"fonctionne pas puisque la liste, étant un objet muable, pourrait contenir "
"fonctionne pas puisque la liste, étant un objet mutable, pourrait contenir "
"une référence à elle-même ou avoir une boucle infinie au niveau du code "
"copié."

View File

@ -798,7 +798,7 @@ msgstr ""
msgid ""
"Lists are :term:`mutable`, which means that you can change their content."
msgstr ""
"Les listes sont des :term:`muable`, ce qui signifie que leur contenu peut "
"Les listes sont des :term:`mutable`, ce qui signifie que leur contenu peut "
"être modifié."
#: faq/programming.rst:457
@ -807,7 +807,7 @@ msgid ""
"has changed from ``[]`` to ``[10]``. Since both the variables refer to the "
"same object, using either name accesses the modified value ``[10]``."
msgstr ""
"Après l'appel de :meth:`~list.append`, le contenu de l'objet muable est "
"Après l'appel de :meth:`~list.append`, le contenu de l'objet mutable est "
"passé de ``[]`` à ``[10]``. Vu que les deux variables font référence au même "
"objet, il est possible d'accéder à la valeur modifiée ``[10]`` avec chacun "
"des noms."
@ -881,7 +881,7 @@ msgid ""
"etc.), we can use some specific operations to mutate it and all the "
"variables that refer to it will see the change."
msgstr ""
"Il est possible d'appliquer des opérations qui modifient un objet muable (:"
"Il est possible d'appliquer des opérations qui modifient un objet mutable (:"
"class:`list`, :class:`dict`, :class:`set`, etc.) et toutes les variables qui "
"y font référence verront le changement."
@ -942,7 +942,7 @@ msgstr ""
#: faq/programming.rst:532
msgid "By passing a mutable (changeable in-place) object::"
msgstr "En passant un objet muable (modifiable sur place) ::"
msgstr "En passant un objet mutable (modifiable sur place) ::"
#: faq/programming.rst:543
msgid "By passing in a dictionary that gets mutated::"
@ -2060,7 +2060,7 @@ msgid ""
msgstr ""
"Ceci est dû à la combinaison de deux facteurs : le fait que les opérateurs "
"d'affectation incrémentaux sont des opérateurs d'*affectation* et à la "
"différence entre les objets muables et immuables en Python."
"différence entre les objets mutables et immuables en Python."
#: faq/programming.rst:1352
msgid ""
@ -2070,7 +2070,7 @@ msgid ""
msgstr ""
"Cette discussion est valable, en général, quand des opérateurs d'affectation "
"incrémentale sont appliqués aux éléments d'un *n*-uplet qui pointe sur des "
"objets muables, mais on prendra ``list`` et ``+=`` comme exemple."
"objets mutables, mais on prendra ``list`` et ``+=`` comme exemple."
#: faq/programming.rst:1356
msgid "If you wrote::"
@ -2167,7 +2167,7 @@ msgid ""
msgstr ""
"L'appel à :meth:`!__iadd__` réussit et la liste est étendue, mais bien que "
"``result`` pointe sur le même objet que ``a_tuple[0]``, l'affectation finale "
"échoue car les *n*-uplets ne sont pas muables."
"échoue car les *n*-uplets ne sont pas mutables."
#: faq/programming.rst:1433
msgid ""
@ -2811,7 +2811,7 @@ msgstr ""
#: faq/programming.rst:1871
msgid "Likewise, new instances of mutable containers are never identical::"
msgstr ""
"De même, deux instances fraîchement créées d'un type de conteneurs muables "
"De même, deux instances fraîchement créées d'un type de conteneurs mutables "
"ne sont jamais identiques ::"
#: faq/programming.rst:1878

View File

@ -1388,7 +1388,7 @@ msgid ""
"value is derived from their :func:`id`."
msgstr ""
"La plupart des types immuables natifs de Python sont hachables, mais les "
"conteneurs muables (comme les listes ou les dictionnaires) ne le sont pas ; "
"conteneurs mutables (comme les listes ou les dictionnaires) ne le sont pas ; "
"les conteneurs immuables (comme les n-uplets ou les ensembles figés) ne sont "
"hachables que si leurs éléments sont hachables. Les instances de classes "
"définies par les utilisateurs sont hachables par défaut. Elles sont toutes "
@ -1841,7 +1841,7 @@ msgstr ""
"Conteneur permettant de rechercher des éléments à partir de clés et "
"implémentant les méthodes spécifiées dans les classes mères abstraites des :"
"class:`tableaux de correspondances <collections.abc.Mapping>` (immuables) "
"ou :class:`tableaux de correspondances muables <collections.abc."
"ou :class:`tableaux de correspondances mutables <collections.abc."
"MutableMapping>` (voir les :ref:`classes mères abstraites <collections-"
"abstract-base-classes>`). Les classes suivantes sont des exemples de "
"tableaux de correspondances : :class:`dict`, :class:`collections."
@ -1977,14 +1977,14 @@ msgstr "Voir :term:`ordre de résolution des méthodes`."
#: glossary.rst:814
msgid "mutable"
msgstr "muable"
msgstr "mutable"
#: glossary.rst:816
msgid ""
"Mutable objects can change their value but keep their :func:`id`. See also :"
"term:`immutable`."
msgstr ""
"Un objet muable peut changer de valeur tout en gardant le même :func:`id`. "
"Un objet mutable peut changer de valeur tout en gardant le même :func:`id`. "
"Voir aussi :term:`immuable`."
#: glossary.rst:818

View File

@ -526,7 +526,7 @@ msgstr ""
#: library/collections.abc.rst:260
msgid "ABCs for read-only and mutable :term:`sequences <sequence>`."
msgstr "ABC pour les :term:`séquences <sequence>` immuables et muables."
msgstr "ABC pour les :term:`séquences <sequence>` immuables et mutables."
#: library/collections.abc.rst:262
msgid ""
@ -553,13 +553,13 @@ msgstr ""
#: library/collections.abc.rst:278
msgid "ABCs for read-only and mutable sets."
msgstr "ABC pour les ensembles immuables et muables."
msgstr "ABC pour les ensembles immuables et mutables."
#: library/collections.abc.rst:283
msgid "ABCs for read-only and mutable :term:`mappings <mapping>`."
msgstr ""
"ABC pour les :term:`tables de correspondances <mapping>` immuables et "
"muables."
"mutables."
#: library/collections.abc.rst:290
msgid ""

View File

@ -1436,7 +1436,7 @@ msgid ""
"See :meth:`types.SimpleNamespace` for a mutable namespace based on an "
"underlying dictionary instead of a tuple."
msgstr ""
"Voir :meth:`types.SimpleNamespace` pour un espace de nommage muable basé sur "
"Voir :meth:`types.SimpleNamespace` pour un espace de nommage mutable basé sur "
"un dictionnaire sous-jacent à la place d'un *n*-uplet."
#: library/collections.rst:1075
@ -1753,7 +1753,7 @@ msgid ""
"In addition to supporting the methods and operations of mutable sequences, :"
"class:`UserList` instances provide the following attribute:"
msgstr ""
"En plus de gérer les méthodes et opérations des séquences muables, les "
"En plus de gérer les méthodes et opérations des séquences mutables, les "
"instances de :class:`UserList` possèdent l'attribut suivant :"
#: library/collections.rst:1351

View File

@ -33,7 +33,7 @@ msgid ""
msgstr ""
"Les instructions d'affectation en Python ne copient pas les objets, elles "
"créent des liens entre la cible et l'objet. Concernant les collections qui "
"sont muables ou contiennent des éléments muables, une copie est parfois "
"sont mutables ou contiennent des éléments mutables, une copie est parfois "
"nécessaire, pour pouvoir modifier une copie sans modifier l'autre. Ce module "
"met à disposition des opérations de copie génériques superficielle et "
"récursive (comme expliqué ci-dessous)."

View File

@ -551,7 +551,7 @@ msgstr ""
msgid ""
"Since these types are mutable, their value can also be changed afterwards::"
msgstr ""
"Ces types étant des muables, leur valeur peut aussi être modifiée après "
"Ces types étant des mutables, leur valeur peut aussi être modifiée après "
"coup ::"
#: library/ctypes.rst:291

View File

@ -484,7 +484,7 @@ msgstr ""
"*default_factory* : s'il est fourni, ce doit être un objet appelable sans "
"argument. Il est alors appelé à chaque fois qu'il faut une valeur par défaut "
"pour le champ. Ceci permet, entre autres choses, de définir des champs dont "
"les valeurs par défaut sont muables. Une erreur se produit si *default* et "
"les valeurs par défaut sont mutables. Une erreur se produit si *default* et "
"*default_factory* sont donnés tous les deux."
#: library/dataclasses.rst:258
@ -1161,7 +1161,7 @@ msgstr ""
#: library/dataclasses.rst:691
msgid "Mutable default values"
msgstr "Valeurs par défaut muables"
msgstr "Valeurs par défaut mutables"
#: library/dataclasses.rst:693
msgid ""
@ -1216,7 +1216,7 @@ msgid ""
"Using default factory functions is a way to create new instances of mutable "
"types as default values for fields::"
msgstr ""
"Pour qu'un champ d'un type muable soit par défaut initialisé à un nouvel "
"Pour qu'un champ d'un type mutable soit par défaut initialisé à un nouvel "
"objet pour chaque instance, utilisez une fonction de fabrique ::"
# suit un ':'

View File

@ -573,7 +573,7 @@ msgid ""
"as most methods that the :class:`bytes` type has, see :ref:`bytes-methods`."
msgstr ""
"Renvoie un nouveau tableau d'octets. La classe :class:`bytearray` est une "
"séquence muable de nombres entiers dans l'intervalle 0 ≤ x < 256. Il possède "
"séquence mutable de nombres entiers dans l'intervalle 0 ≤ x < 256. Il possède "
"la plupart des méthodes des séquences variables, décrites dans :ref:"
"`typesseq-mutable`, ainsi que la plupart des méthodes de la classe :class:"
"`bytes`, voir :ref:`bytes-methods`."
@ -2031,7 +2031,7 @@ msgid ""
"type, as documented in :ref:`typesseq-list` and :ref:`typesseq`."
msgstr ""
"Contrairement aux apparences, :class:`list` n'est pas une fonction mais un "
"type séquentiel muable, comme décrit dans :ref:`typesseq-list` et :ref:"
"type séquentiel mutable, comme décrit dans :ref:`typesseq-list` et :ref:"
"`typesseq`."
#: library/functions.rst:1029

View File

@ -1403,7 +1403,7 @@ msgid ""
"explicitly bound arguments. Changes in :attr:`arguments` will reflect in :"
"attr:`args` and :attr:`kwargs`."
msgstr ""
"Une correspondance muable entre les noms de paramètres et les valeurs des "
"Une correspondance mutable entre les noms de paramètres et les valeurs des "
"arguments. Contient seulement les arguments liés explicitement. Les "
"changements dans :attr:`arguments` sont reflétés dans :attr:`args` et :attr:"
"`kwargs`."

View File

@ -312,7 +312,7 @@ msgid ""
"support the dynamic creation of new :class:`ShareableList` instances via "
"slicing."
msgstr ""
"Construit un objet muable compatible avec le type liste dont toutes les "
"Construit un objet mutable compatible avec le type liste dont toutes les "
"valeurs sont stockées dans un bloc de mémoire partagée. Ceci limite le type "
"des valeurs pouvant être stockées aux types natifs ``int``, ``float``, "
"``bool``, ``str`` (de moins de 10 Mo chacune), ``bytes`` (de moins de 10 Mo "

View File

@ -1779,7 +1779,7 @@ msgid ""
"move on to the next buffer in the sequence to hold the rest of the data."
msgstr ""
"Lit depuis un descripteur de fichier *fd*, à la position *offset* dans des :"
"term:`objets bytes-compatibles <bytes-like object>` muables *buffers*, sans "
"term:`objets bytes-compatibles <bytes-like object>` mutables *buffers*, sans "
"modifier la position dans le fichier. Les données sont transférées dans "
"chaque tampon, jusqu'à ce qu'il soit plein, tour à tour."
@ -2132,7 +2132,7 @@ msgid ""
"rest of the data."
msgstr ""
"Lit depuis un descripteur de fichier *fd* dans une séquence d':term:`objets "
"bytes-compatibles <bytes-like object>` muables : *buffers*. Les données sont "
"bytes-compatibles <bytes-like object>` mutables : *buffers*. Les données sont "
"transférées dans chaque tampon, jusqu'à ce qu'il soit plein, tour à tour."
#: library/os.rst:1560

View File

@ -134,7 +134,7 @@ msgstr ""
"pointent dessus, depuis différents endroits dans la hiérarchie sérialisée. "
"Le module :mod:`pickle` repère ces partages et ne stocke ces objets qu'une "
"seule fois. Les objets partagés restent ainsi partagés, ce qui peut être "
"très important pour les objets muables."
"très important pour les objets mutables."
#: library/pickle.rst:72
msgid ""

View File

@ -6,37 +6,44 @@ msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-07-23 14:38+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"PO-Revision-Date: 2023-11-24 18:39+0100\n"
"Last-Translator: Jérémy TREMBLAY <jeremy-tremblay@outlook.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 3.4\n"
#: library/pkgutil.rst:2
msgid ":mod:`pkgutil` --- Package extension utility"
msgstr ""
msgstr ":mod:`pkgutil` — Utilitaire d'extension de package"
#: library/pkgutil.rst:7
msgid "**Source code:** :source:`Lib/pkgutil.py`"
msgstr "**Code source :** :source:`Lib/pkgutil.py`"
msgstr "**Code source :** :source:`Lib/pkgutil.py`"
#: library/pkgutil.rst:11
msgid ""
"This module provides utilities for the import system, in particular package "
"support."
msgstr ""
"Ce module fournit des utilitaires pour le système d'importation, en "
"particulier pour la prise en charge des paquets."
#: library/pkgutil.rst:16
msgid "A namedtuple that holds a brief summary of a module's info."
msgstr ""
"Un *n*-uplet nommé qui contient un bref résumé des informations d'un module."
#: library/pkgutil.rst:22
msgid ""
"Extend the search path for the modules which comprise a package. Intended "
"use is to place the following code in a package's :file:`__init__.py`::"
msgstr ""
"Étend le chemin de recherche pour les modules qui composent un paquet. "
"L'usage prévu est de placer le code suivant dans le :file:`__init__.py` d'un "
"paquet ::"
#: library/pkgutil.rst:28
msgid ""
@ -45,6 +52,10 @@ msgid ""
"This is useful if one wants to distribute different parts of a single "
"logical package as multiple directories."
msgstr ""
"Pour chaque répertoire sur :data:`sys.path` qui a un sous-répertoire "
"correspondant au nom du paquet, ajoute le sous-répertoire au :attr:"
"`__path__` du paquet. Cela est utile si l'on souhaite distribuer différentes "
"parties d'un paquet logique unique dans plusieurs répertoires."
#: library/pkgutil.rst:33
msgid ""
@ -56,6 +67,14 @@ msgid ""
"pkg` file are added to the path, regardless of whether they exist on the "
"filesystem. (This is a feature.)"
msgstr ""
"Elle recherche également les fichiers :file:`*.pkg` en commençant là où "
"``*`` correspond à l'argument *name*. Cette fonctionnalité est similaire aux "
"fichiers :file:`*.pth` (voir le module :mod:`site` pour plus "
"d'informations), à l'exception qu'elle ne traite pas de manière spéciale les "
"lignes commençant par ``import``. Un fichier :file:`*.pkg` est fiable de "
"facto : à part la vérification des doublons, toutes les entrées trouvées "
"dans un fichier :file:`*.pkg` sont ajoutées au chemin, quelle que soit leur "
"existence sur le système de fichiers. (C'est une fonctionnalité.)"
#: library/pkgutil.rst:41
msgid ""
@ -63,6 +82,10 @@ msgid ""
"returned unchanged. The input path is not modified; an extended copy is "
"returned. Items are only appended to the copy at the end."
msgstr ""
"Si le chemin d'entrée n'est pas une liste (comme c'est le cas pour les "
"paquets figés), il est retourné tel quel. Le chemin d'entrée n'est pas "
"modifié ; une copie étendue en est retournée. Les éléments ne sont ajoutés à "
"la copie qu'à la fin."
#: library/pkgutil.rst:45
msgid ""
@ -72,10 +95,18 @@ msgid ""
"may cause this function to raise an exception (in line with :func:`os.path."
"isdir` behavior)."
msgstr ""
"L'interpréteur estime que :data:`sys.path` est une séquence. Les éléments "
"de :data:`sys.path` qui ne sont pas des chaînes se référant à des "
"répertoires existants sont ignorés. Les éléments Unicode sur :data:`sys."
"path` qui provoquent des erreurs lorsqu'ils sont utilisés comme noms de "
"fichiers peuvent amener cette fonction à lever une exception (conformément "
"au comportement de :func:`os.path.isdir`)."
#: library/pkgutil.rst:54
msgid ":pep:`302` Finder that wraps Python's \"classic\" import algorithm."
msgstr ""
":pep:`302` Chercheur qui enveloppe l'algorithme d'importation « classique » "
"de Python."
#: library/pkgutil.rst:56
msgid ""
@ -84,27 +115,38 @@ msgid ""
"searches the current :data:`sys.path`, plus any modules that are frozen or "
"built-in."
msgstr ""
"Si *dirname* est une chaîne, un chercheur :pep:`302` est créé pour "
"rechercher ce répertoire. Si *dirname* est ``None``, un chercheur :pep:`302` "
"est créé pour rechercher le :data:`sys.path` actuel, ainsi que les modules "
"qui sont figés ou natifs."
#: library/pkgutil.rst:61
msgid ""
"Note that :class:`ImpImporter` does not currently support being used by "
"placement on :data:`sys.meta_path`."
msgstr ""
"Notez que :class:`ImpImporter` ne prend actuellement pas en charge son "
"utilisation en tant que placement dans :data:`sys.meta_path`."
#: library/pkgutil.rst:73
msgid ""
"This emulation is no longer needed, as the standard import mechanism is now "
"fully :pep:`302` compliant and available in :mod:`importlib`."
msgstr ""
"Cette émulation n'est plus nécessaire, car le mécanisme d'importation "
"standard est désormais entièrement conforme à la :pep:`302` et "
"disponible dans :mod:`importlib`."
#: library/pkgutil.rst:71
msgid ""
":term:`Loader <loader>` that wraps Python's \"classic\" import algorithm."
msgstr ""
":term:`Loader <loader>` qui encapsule l'algorithme d'importation "
 classique » de Python."
#: library/pkgutil.rst:80
msgid "Retrieve a module :term:`loader` for the given *fullname*."
msgstr ""
msgstr "Récupère un :term:`loader` de module pour le *fullname* donné."
#: library/pkgutil.rst:82
msgid ""
@ -113,36 +155,46 @@ msgid ""
"returns the loader rather than the full :class:`importlib.machinery."
"ModuleSpec`."
msgstr ""
"Il s'agit d'une surcouche de compatibilité ascendante autour de :func:"
"`importlib.util.find_spec` qui convertit la plupart des échecs en :exc:"
"`ImportError` et ne renvoie que le chargeur, plutôt que le :class:`importlib."
"machinery.ModuleSpec` complet."
#: library/pkgutil.rst:104 library/pkgutil.rst:140 library/pkgutil.rst:200
msgid ""
"Updated to be based directly on :mod:`importlib` rather than relying on the "
"package internal :pep:`302` import emulation."
msgstr ""
"Mise à jour pour être basée directement sur :mod:`importlib` au lieu de "
"dépendre de l'émulation interne de la :pep:`302` du paquet."
#: library/pkgutil.rst:123
msgid "Updated to be based on :pep:`451`"
msgstr ""
msgstr "Mise à jour pour être basée sur la :pep:`451`"
#: library/pkgutil.rst:96
msgid "Retrieve a :term:`finder` for the given *path_item*."
msgstr ""
msgstr "Récupère un :term:`finder` pour l'élément *path_item* donné."
#: library/pkgutil.rst:98
msgid ""
"The returned finder is cached in :data:`sys.path_importer_cache` if it was "
"newly created by a path hook."
msgstr ""
"Le chercheur retourné est mis en cache dans :data:`sys.path_importer_cache` "
"s'il a été récemment créé par le chemin d'un point d'entrée."
#: library/pkgutil.rst:101
msgid ""
"The cache (or part of it) can be cleared manually if a rescan of :data:`sys."
"path_hooks` is necessary."
msgstr ""
"Le cache (ou une partie de celui-ci) peut être effacé manuellement si une "
"nouvelle analyse de :data:`sys.path_hooks` est nécessaire."
#: library/pkgutil.rst:111
msgid "Get a :term:`loader` object for *module_or_name*."
msgstr ""
msgstr "Récupère un objet :term:`loader` pour *module_or_name*."
#: library/pkgutil.rst:113
msgid ""
@ -152,10 +204,15 @@ msgid ""
"not already imported, its containing package (if any) is imported, in order "
"to establish the package ``__path__``."
msgstr ""
"Si le module ou le paquet est accessible via le mécanisme d'importation "
"normal, une encapsulation autour de la partie pertinente de cette mécanique "
"est renvoyé. Renvoie ``None`` si le module ne peut pas être trouvé ou "
"importé. Si le module nommé n'est pas déjà importé, son paquet contenant (le "
"cas échéant) est importé afin d'établir le paquet ``__path__``."
#: library/pkgutil.rst:129
msgid "Yield :term:`finder` objects for the given module name."
msgstr ""
msgstr "Génère des objets :term:`finder` pour le nom du module donné."
#: library/pkgutil.rst:131
msgid ""
@ -163,32 +220,47 @@ msgid ""
"containing fullname, otherwise they will be all registered top level finders "
"(i.e. those on both :data:`sys.meta_path` and :data:`sys.path_hooks`)."
msgstr ""
"Si le nom complet contient un ``'.'``, les chercheurs sont pour le paquet "
"contenant le nom complet, sinon ils sont enregistrés pour tous les "
"chercheurs de niveau supérieur (c'est-à-dire ceux de :data:`sys.meta_path` "
"et de :data:`sys.path_hooks`)."
#: library/pkgutil.rst:135
msgid ""
"If the named module is in a package, that package is imported as a side "
"effect of invoking this function."
msgstr ""
"Si le module nommé se trouve dans un paquet, ce paquet est importé en tant "
"qu'effet secondaire de l'invocation de cette fonction."
#: library/pkgutil.rst:138
msgid "If no module name is specified, all top level finders are produced."
msgstr ""
"Si aucun nom de module n'est spécifié, tous les chercheurs de niveau "
"supérieur sont générés."
#: library/pkgutil.rst:147
msgid ""
"Yields :class:`ModuleInfo` for all submodules on *path*, or, if *path* is "
"``None``, all top-level modules on :data:`sys.path`."
msgstr ""
"Fournit des :class:`ModuleInfo` pour tous les sous-modules sur *path* ou, si "
"*path* est ``None``, pour tous les modules de niveau supérieur sur :data:"
"`sys.path`."
#: library/pkgutil.rst:171
msgid ""
"*path* should be either ``None`` or a list of paths to look for modules in."
msgstr ""
"*path* doit être soit ``None``, soit une liste de chemins pour rechercher "
"des modules."
#: library/pkgutil.rst:173
msgid ""
"*prefix* is a string to output on the front of every module name on output."
msgstr ""
"*prefix* est une chaîne de caractères à afficher au début de chaque nom de "
"module en sortie."
#: library/pkgutil.rst:195
msgid ""
@ -197,12 +269,18 @@ msgid ""
"for :class:`importlib.machinery.FileFinder` and :class:`zipimport."
"zipimporter`."
msgstr ""
"Cela fonctionne uniquement pour un :term:`finder` qui définit une méthode "
"``iter_modules()``. Cette interface n'est pas standard, donc le module "
"fournit également des implémentations pour :class:`importlib.machinery."
"FileFinder` et :class:`zipimport.zipimporter`."
#: library/pkgutil.rst:168
msgid ""
"Yields :class:`ModuleInfo` for all modules recursively on *path*, or, if "
"*path* is ``None``, all accessible modules."
msgstr ""
"Fournit des :class:`ModuleInfo` pour tous les modules de manière récursive "
"sur *path* ou, si *path* est ``None``, tous les modules accessibles."
#: library/pkgutil.rst:175
msgid ""
@ -210,6 +288,9 @@ msgid ""
"the given *path*, in order to access the ``__path__`` attribute to find "
"submodules."
msgstr ""
"Notez que cette fonction doit importer tous les *packages* (*pas* tous les "
"modules !) sur le *path* donné, afin d'accéder à l'attribut ``__path__`` "
"pour trouver les sous-modules."
#: library/pkgutil.rst:179
msgid ""
@ -219,6 +300,11 @@ msgid ""
"`ImportError`\\s are caught and ignored, while all other exceptions are "
"propagated, terminating the search."
msgstr ""
"*onerror* est une fonction qui est appelée avec un argument (le nom du "
"paquet qui était en cours d'importation) si une exception se produit lors de "
"la tentative d'importation d'un paquet. Si aucune fonction *onerror* n'est "
"fournie, les :exc:`ImportError`\\s sont attrapées et ignorées, tandis que "
"toutes les autres exceptions sont propagées, mettant fin à la recherche."
#: library/pkgutil.rst:185
msgid "Examples::"
@ -226,7 +312,7 @@ msgstr "Exemples ::"
#: library/pkgutil.rst:207
msgid "Get a resource from a package."
msgstr ""
msgstr "Obtient une ressource à partir d'un paquet."
#: library/pkgutil.rst:209
msgid ""
@ -237,18 +323,28 @@ msgid ""
"separator. The parent directory name ``..`` is not allowed, and nor is a "
"rooted name (starting with a ``/``)."
msgstr ""
"Ceci est une surcouche pour l'API :term:`loader` :meth:`get_data <importlib."
"abc.ResourceLoader.get_data>`. L'argument *package* doit être le nom d'un "
"paquet, au format module standard (``foo.bar``). L'argument *resource* doit "
"être sous forme d'un nom de fichier relatif, en utilisant ``/`` comme "
"séparateur de chemin. Le nom du répertoire parent ``..`` n'est pas autorisé, "
"pas plus qu'un nom racine (commençant par ``/``)."
#: library/pkgutil.rst:216
msgid ""
"The function returns a binary string that is the contents of the specified "
"resource."
msgstr ""
"La fonction renvoie une chaîne binaire qui est le contenu de la ressource "
"spécifiée."
#: library/pkgutil.rst:219
msgid ""
"For packages located in the filesystem, which have already been imported, "
"this is the rough equivalent of::"
msgstr ""
"Pour les paquets situés dans le système de fichiers, qui ont déjà été "
"importés, c'est l'équivalent approximatif de ::"
#: library/pkgutil.rst:225
msgid ""
@ -258,10 +354,16 @@ msgid ""
"for :term:`namespace packages <namespace package>` does not support :meth:"
"`get_data <importlib.abc.ResourceLoader.get_data>`."
msgstr ""
"Si le paquet ne peut pas être localisé ou chargé, ou s'il utilise un :term:"
"`loader` qui ne prend pas en charge :meth:`get_data <importlib.abc."
"ResourceLoader.get_data>`, alors ``None`` est retourné. En particulier, le :"
"term:`loader` pour les :term:`paquets espaces de noms <namespace package>` "
"ne prend pas en charge :meth:`get_data <importlib.abc.ResourceLoader."
"get_data>`."
#: library/pkgutil.rst:234
msgid "Resolve a name to an object."
msgstr ""
msgstr "Solutionne un nom en un objet."
#: library/pkgutil.rst:236
msgid ""
@ -269,6 +371,10 @@ msgid ""
"issue:`12915`) - and equivalent functionality is also in widely used third-"
"party packages such as setuptools, Django and Pyramid."
msgstr ""
"Cette fonctionnalité est utilisée dans de nombreux endroits de la "
"bibliothèque standard (voir :issue:`12915`) - et une fonctionnalité "
"équivalente est également présente dans des paquets largement utilisés tels "
"que Setuptools, Django et Pyramid."
#: library/pkgutil.rst:240
msgid ""
@ -276,14 +382,17 @@ msgid ""
"where W is shorthand for a valid Python identifier and dot stands for a "
"literal period in these pseudo-regexes:"
msgstr ""
"Python s'attend à ce que *name* soit une chaîne de caractères dans l'un des "
"formats suivants, où W est une abréviation pour un identifiant Python valide "
"et le point représente un point littéral dans ces pseudo-regexes :"
#: library/pkgutil.rst:244
msgid "``W(.W)*``"
msgstr ""
msgstr "``W(.W)*``"
#: library/pkgutil.rst:245
msgid "``W(.W)*:(W(.W)*)?``"
msgstr ""
msgstr "``W(.W)*:(W(.W)*)?``"
#: library/pkgutil.rst:247
msgid ""
@ -294,6 +403,13 @@ msgid ""
"inferred by inspection, repeated attempts to import must be done with this "
"form."
msgstr ""
"La première forme est destinée uniquement à assurer la compatibilité "
"ascendante. Elle suppose qu'une partie du nom pointé est un paquet, et que "
"le reste est un objet quelque part à l'intérieur de ce paquet, "
"éventuellement niché à l'intérieur d'autres objets. Puisque l'endroit où le "
"paquet s'arrête et où la hiérarchie des objets commence ne peut pas être "
"déduit par inspection, des tentatives répétées d'importation doivent être "
"effectuées avec cette forme."
#: library/pkgutil.rst:254
msgid ""
@ -303,23 +419,34 @@ msgid ""
"hierarchy within that package. Only one import is needed in this form. If it "
"ends with the colon, then a module object is returned."
msgstr ""
"Dans la deuxième forme, l'appelant clarifie le point de division en "
"fournissant un seul deux-points : le nom pointé à gauche des deux-points est "
"un package à importer, et le nom pointé à droite est la hiérarchie d'objets "
"à l'intérieur de ce paquet. Seule une importation est nécessaire dans cette "
"forme. Si elle se termine par un deux-points, alors un objet module est "
"retourné."
#: library/pkgutil.rst:260
msgid ""
"The function will return an object (which might be a module), or raise one "
"of the following exceptions:"
msgstr ""
"La fonction renvoie un objet (qui pourrait être un module), ou génère l'une "
"des exceptions suivantes :"
#: library/pkgutil.rst:263
msgid ":exc:`ValueError` -- if *name* isn't in a recognised format."
msgstr ""
msgstr ":exc:`ValueError` si *name* n'est pas un format reconnu."
#: library/pkgutil.rst:265
msgid ":exc:`ImportError` -- if an import failed when it shouldn't have."
msgstr ""
":exc:`ImportError` si une importation échoue lorsqu'elle n'aurait pas dû."
#: library/pkgutil.rst:267
msgid ""
":exc:`AttributeError` -- If a failure occurred when traversing the object "
"hierarchy within the imported package to get to the desired object."
msgstr ""
":exc:`AttributeError` Si un échec s'est produit lors du parcours de la "
"hiérarchie d'objets dans le paquet importé pour accéder à l'objet souhaité."

View File

@ -82,7 +82,7 @@ msgid ""
"mutated)."
msgstr ""
"À cause de la sémantique de Python, une étagère ne peut pas savoir "
"lorsqu'une entrée muable de dictionnaire persistant est modifiée. Par défaut "
"lorsqu'une entrée mutable de dictionnaire persistant est modifiée. Par défaut "
"les objets modifiés sont écrits *seulement* lorsqu'ils sont assignés à une "
"étagère (voir :ref:`shelve-example`). Si le paramètre optionnel *writeback* "
"est mis à ``True``, toutes les entrées déjà accédées sont aussi mises en "
@ -244,7 +244,7 @@ msgstr ""
"Si le paramètre *writeback* est ``True``, l'objet garde en cache toutes les "
"entrées accédées et les écrit dans le *dict* aux moments de synchronisation "
"et de fermeture. Cela permet des opérations naturelles sur les entrées "
"muables, mais peut consommer beaucoup plus de mémoire et rendre les temps de "
"mutables, mais peut consommer beaucoup plus de mémoire et rendre les temps de "
"synchronisation et de fermeture très longs."
#: library/shelve.rst:132

View File

@ -6,7 +6,7 @@ msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-07-23 14:38+0200\n"
"PO-Revision-Date: 2023-11-23 09:37-0700\n"
"PO-Revision-Date: 2023-11-26 16:20+0100\n"
"Last-Translator: Yannick Gingras <ygingras@ygingras.net>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n"
@ -88,8 +88,8 @@ msgid ""
msgstr ""
"Copie le contenu (sans métadonnées) du fichier nommé *src* dans un fichier "
"nommé *dst* et renvoie *dst* de la manière la plus efficace possible. Les "
"paramètres *src* et *dst* sont des :term:`objets simili-chemin <path-like "
"object>` ou des chaînes spécifiant des chemins."
"paramètres *src* et *dst* sont des objets simili-chemin ou des chaînes "
"spécifiant des chemins."
#: library/shutil.rst:57
msgid ""

View File

@ -42,7 +42,7 @@ msgid ""
"rearrange their members in place, and don't return a specific item, never "
"return the collection instance itself but ``None``."
msgstr ""
"Certaines classes de collection sont muables. Les méthodes qui ajoutent, "
"Certaines classes de collection sont mutables. Les méthodes qui ajoutent, "
"retirent, ou réorganisent leurs éléments sur place, et qui ne renvoient pas "
"un élément spécifique, ne renvoient jamais l'instance de la collection elle-"
"même, mais ``None``."
@ -1726,7 +1726,7 @@ msgstr ""
"si vous concaténez des :class:`bytes`, vous pouvez aussi utiliser :meth:"
"`bytes.join` ou :class:`io.BytesIO`, ou vous pouvez faire les concaténations "
"sur place avec un objet :class:`bytearray`. Les objets :class:`bytearray` "
"sont muables et ont un mécanisme de sur-allocation efficace ;"
"sont mutables et ont un mécanisme de sur-allocation efficace ;"
# énumération
#: library/stdtypes.rst:1050
@ -1779,7 +1779,7 @@ msgid ""
"`hash` built-in."
msgstr ""
"La seule opération que les types de séquences immuables implémentent et qui "
"n'est pas implémentée par les types de séquences muables est la fonction "
"n'est pas implémentée par les types de séquences mutables est la fonction "
"native :func:`hash`."
#: library/stdtypes.rst:1083
@ -1802,7 +1802,7 @@ msgstr ""
#: library/stdtypes.rst:1094
msgid "Mutable Sequence Types"
msgstr "Types de séquences muables"
msgstr "Types de séquences mutables"
#: library/stdtypes.rst:1101
msgid ""
@ -1811,7 +1811,7 @@ msgid ""
"easier to correctly implement these operations on custom sequence types."
msgstr ""
"Les opérations dans le tableau ci-dessous sont définies sur les types de "
"séquences muables. La classe mère abstraite :class:`collections.abc."
"séquences mutables. La classe mère abstraite :class:`collections.abc."
"MutableSequence` est prévue pour faciliter l'implémentation correcte de ces "
"opérations sur les types de séquences personnalisées."
@ -1823,7 +1823,7 @@ msgid ""
"integers that meet the value restriction ``0 <= x <= 255``)."
msgstr ""
"Dans le tableau ci-dessosus, *s* est une instance d'un type de séquence "
"muable, *t* est un objet itérable et *x* est un objet arbitraire qui répond "
"mutable, *t* est un objet itérable et *x* est un objet arbitraire qui répond "
"à toutes les restrictions de type et de valeur imposées par *s* (par "
"exemple, :class:`bytearray` accepte uniquement des nombres entiers qui "
"répondent à la restriction de la valeur ``0 <= x <= 255``)."
@ -1986,7 +1986,7 @@ msgid ""
"classes provide it."
msgstr ""
":meth:`clear` et :meth:`!copy` sont incluses pour la compatibilité avec les "
"interfaces des conteneurs muables qui ne gèrent pas les opérations de "
"interfaces des conteneurs mutables qui ne gèrent pas les opérations de "
"découpage (comme :class:`dict` et :class:`set`). :meth:`!copy` ne fait pas "
"partie des classes mères abstraites (*ABC*) de :class:`collections.abc."
"MutableSequence`, mais la plupart des classes implémentées gérant des "
@ -2019,7 +2019,7 @@ msgid ""
"homogeneous items (where the precise degree of similarity will vary by "
"application)."
msgstr ""
"Les listes sont des séquences muables, généralement utilisées pour stocker "
"Les listes sont des séquences mutables, généralement utilisées pour stocker "
"des collections d'éléments homogènes (le degré de similitude varie selon "
"l'usage)."
@ -2085,7 +2085,7 @@ msgid ""
"additional method:"
msgstr ""
"Les listes gèrent toutes les opérations des séquences :ref:`communes "
"<typesseq-common>` et :ref:`muables <typesseq-mutable>`. Les listes "
"<typesseq-common>` et :ref:`mutables <typesseq-mutable>`. Les listes "
"fournissent également la méthode supplémentaire suivante :"
#: library/stdtypes.rst:1249
@ -2554,7 +2554,7 @@ msgid ""
"StringIO` can be used to efficiently construct strings from multiple "
"fragments."
msgstr ""
"Il n'y a aucun type de chaîne muable, mais :meth:`str.join` ou :class:`io."
"Il n'y a aucun type de chaîne mutable, mais :meth:`str.join` ou :class:`io."
"StringIO` peuvent être utilisées pour construire efficacement des chaînes à "
"partir de plusieurs fragments."
@ -4362,7 +4362,7 @@ msgid ""
":class:`bytearray` objects are a mutable counterpart to :class:`bytes` "
"objects."
msgstr ""
"Les objets :class:`bytearray` sont l'équivalent muable des objets :class:"
"Les objets :class:`bytearray` sont l'équivalent mutable des objets :class:"
"`bytes`."
#: library/stdtypes.rst:2599
@ -4404,8 +4404,8 @@ msgid ""
"mutable>` sequence operations in addition to the common bytes and bytearray "
"operations described in :ref:`bytes-methods`."
msgstr ""
"Comme les *bytearray* sont muables, ils prennent en charge les opérations de "
"séquences :ref:`muables <typesseq-mutable>` en plus des opérations communes "
"Comme les *bytearray* sont mutables, ils prennent en charge les opérations de "
"séquences :ref:`mutables <typesseq-mutable>` en plus des opérations communes "
"de *bytes* et *bytearray* décrites dans :ref:`bytes-methods`."
#: library/stdtypes.rst:2611
@ -5894,9 +5894,9 @@ msgid ""
"of another set."
msgstr ""
"Il existe actuellement deux types natifs pour les ensembles, :class:`set` "
"et :class:`frozenset`. Le type :class:`set` est muable — son contenu peut "
"et :class:`frozenset`. Le type :class:`set` est mutable — son contenu peut "
"changer en utilisant des méthodes comme :meth:`~set.add` et :meth:`~set."
"remove`. Puisqu'il est muable, il n'a pas de valeur de hachage et ne peut "
"remove`. Puisqu'il est mutable, il n'a pas de valeur de hachage et ne peut "
"donc pas être utilisé ni comme clé de dictionnaire ni comme élément d'un "
"autre ensemble. Le type :class:`frozenset` est immuable et :term:`hachable "
"<hashable>` — son contenu ne peut être modifié après sa création, il peut "
@ -6218,7 +6218,7 @@ msgid ""
msgstr ""
"Un objet :term:`tableau de correspondances <mapping>` (*mapping*) fait "
"correspondre des valeurs :term:`hachables <hashable>` à des objets "
"arbitraires. Les tableaux de correspondances sont des objets muables. Il "
"arbitraires. Les tableaux de correspondances sont des objets mutables. Il "
"n'existe pour le moment qu'un type de tableau de correspondances standard, "
"le :dfn:`dictionary`. (Pour les autres conteneurs, voir les types natifs :"
"class:`liste <list>`, :class:`ensemble <set>` et :class:`n-uplet <tuple>`, "
@ -6234,7 +6234,7 @@ msgid ""
msgstr ""
"Les clés d'un dictionnaire sont *presque* des données arbitraires. Les "
"valeurs qui ne sont pas :term:`hachables <hashable>`, c'est-à-dire les "
"valeurs contenant des listes, dictionnaires ou autres types muables (qui "
"valeurs contenant des listes, dictionnaires ou autres types mutables (qui "
"sont comparés à l'aide de leurs valeurs plutôt que par l'identité de "
"l'objet) ne peuvent pas être utilisées comme clés. Des valeurs qui sont "
"considérées égales lors d'une comparaison (comme ``1``, ``1.0`` et ``True``) "
@ -8781,7 +8781,7 @@ msgstr ""
#: library/stdtypes.rst:1461
#, fuzzy
msgid "text sequence type"
msgstr "Types de séquences muables"
msgstr "Types de séquences mutables"
#: library/stdtypes.rst:1510 library/stdtypes.rst:1528
#, fuzzy
@ -8872,7 +8872,7 @@ msgstr ""
#: library/stdtypes.rst:2458
#, fuzzy
msgid "binary sequence types"
msgstr "Types de séquences muables"
msgstr "Types de séquences mutables"
#: library/stdtypes.rst:2466
#, fuzzy

View File

@ -6,18 +6,18 @@ msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-12-31 11:33+0100\n"
"PO-Revision-Date: 2021-11-08 15:03+0100\n"
"PO-Revision-Date: 2023-07-24 13:50+0200\n"
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 3.0\n"
"X-Generator: Poedit 3.3.1\n"
#: library/zipimport.rst:2
msgid ":mod:`zipimport` --- Import modules from Zip archives"
msgstr ":mod:`zipimport` — Importer des modules à partir d'archives Zip"
msgstr ":mod:`zipimport` — Import de modules à partir d'archives Zip"
#: library/zipimport.rst:9
msgid "**Source code:** :source:`Lib/zipimport.py`"
@ -58,7 +58,6 @@ msgstr ""
"répertoire :file:`lib/` dans l'archive."
#: library/zipimport.rst:26
#, fuzzy
msgid ""
"Any files may be present in the ZIP archive, but importers are only invoked "
"for :file:`.py` and :file:`.pyc` files. ZIP import of dynamic modules (:"
@ -67,19 +66,20 @@ msgid ""
"adding the corresponding :file:`.pyc` file, meaning that if a ZIP archive "
"doesn't contain :file:`.pyc` files, importing may be rather slow."
msgstr ""
"Tous les fichiers peuvent être présents dans l'archive ZIP, mais seuls les "
"fichiers :file:`.py` et :file:`.pyc` sont disponibles pour importation. "
"L'importation ZIP des modules dynamiques (:file:`.pyd`, :file:`.so`) n'est "
"pas permise. Notez que si une archive ne contient que des fichiers :file:`."
"py`, Python n'essaiera pas de modifier l'archive en ajoutant le fichier "
"correspondant :file:`.pyc`, ce qui signifie que si une archive ZIP ne "
"contient pas de fichier :file:`.pyc`, l'importation peut être assez lente."
"Tous les fichiers peuvent être présents dans l'archive ZIP, mais les "
"importateurs ne sont invoqués que pour les fichiers :file:`.py` et :file:`."
"pyc`. L'importation ZIP de modules dynamiques (:file:`.py`, :file:`.so`) "
"n'est pas permise. Notez que si une archive ne contient que des fichiers :"
"file:`.py`, Python n'essaiera pas de modifier l'archive en ajoutant le "
"fichier :file:`.pyc` correspondant, ce qui signifie que si une archive ZIP "
"ne contient pas de fichiers :file:`.pyc`, l'importation peut être assez "
"lente."
#: library/zipimport.rst:33
msgid "Previously, ZIP archives with an archive comment were not supported."
msgstr ""
"auparavant, les archives ZIP avec un commentaire n'étaient pas prises en "
"charge."
"auparavant, les archives ZIP avec un commentaire darchive nétaient pas "
"prises en charge."
#: library/zipimport.rst:40
msgid ""

View File

@ -6,7 +6,7 @@ msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-07-23 14:38+0200\n"
"PO-Revision-Date: 2022-11-20 21:56+0100\n"
"PO-Revision-Date: 2023-12-05 16:21+0100\n"
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n"
@ -82,17 +82,17 @@ msgid ""
"lists are mutable."
msgstr ""
"La *valeur* de certains objets peut changer. Les objets dont la valeur peut "
"changer sont dits *muables* (*mutable* en anglais) ; les objets dont la "
"valeur est définitivement fixée à leur création sont dits *immuables* "
"(*immutable* en anglais). La valeur d'un objet conteneur immuable qui "
"contient une référence vers un objet muable peut varier lorsque la valeur de "
"l'objet muable change ; cependant, le conteneur est quand même considéré "
"comme immuable parce que l'ensemble des objets qu'il contient ne peut pas "
"être modifié. Ainsi, l'immuabilité n'est pas strictement équivalente au fait "
"d'avoir une valeur non modifiable, c'est plus subtil. La muabilité d'un "
"objet est définie par son type ; par exemple, les nombres, les chaînes de "
"caractères et les *n*-uplets sont immuables alors que les dictionnaires et "
"les listes sont muables."
"changer sont dits mutables ; les objets dont la valeur est définitivement "
"fixée à leur création sont dits *immuables* (*immutable* en anglais). La "
"valeur d'un objet conteneur immuable qui contient une référence vers un "
"objet mutable peut varier lorsque la valeur de l'objet mutable change ; "
"cependant, le conteneur est quand même considéré comme immuable parce que "
"l'ensemble des objets qu'il contient ne peut pas être modifié. Ainsi, "
"l'immuabilité n'est pas strictement équivalente au fait d'avoir une valeur "
"non modifiable, c'est plus subtil. La muabilité d'un objet est définie par "
"son type ; par exemple, les nombres, les chaînes de caractères et les *n*-"
"uplets sont immuables alors que les dictionnaires et les listes sont "
"mutables."
#: reference/datamodel.rst:65
msgid ""
@ -182,8 +182,8 @@ msgstr ""
"identifiants des objets contenus ; cependant, lorsque nous parlons de la "
"muabilité d'un conteneur, seuls les identifiants des objets immédiatement "
"contenus sont concernés. Ainsi, si un conteneur immuable (comme un *n*-"
"uplet) contient une référence à un objet muable, sa valeur change si cet "
"objet muable est modifié."
"uplet) contient une référence à un objet mutable, sa valeur change si cet "
"objet mutable est modifié."
#: reference/datamodel.rst:106
msgid ""
@ -201,7 +201,7 @@ msgstr ""
"son identifiant est concerné dans un certain sens : pour les types "
"immuables, les opérations qui calculent de nouvelles valeurs peuvent en fait "
"renvoyer une référence à n'importe quel objet existant avec le même type et "
"la même valeur, alors que pour les objets muables cela n'est pas autorisé. "
"la même valeur, alors que pour les objets mutables cela n'est pas autorisé. "
"Par exemple, après ``a = 1 ; b = 1``, ``a`` et ``b`` peuvent ou non se "
"référer au même objet avec la valeur un, en fonction de l'implémentation. "
"Mais après ``c = [] ; d = []``, il est garanti que ``c`` et ``d`` font "
@ -545,8 +545,8 @@ msgid ""
msgstr ""
"Un objet de type de séquence immuable ne peut pas être modifié une fois "
"qu'il a été créé. Si l'objet contient des références à d'autres objets, ces "
"autres objets peuvent être muables et peuvent être modifiés ; cependant, les "
"objets directement référencés par un objet immuable ne peuvent pas être "
"autres objets peuvent être mutables et peuvent être modifiés ; cependant, "
"les objets directement référencés par un objet immuable ne peuvent pas être "
"modifiés."
#: reference/datamodel.rst:304
@ -626,7 +626,7 @@ msgstr ""
#: reference/datamodel.rst:383
msgid "Mutable sequences"
msgstr "Séquences muables"
msgstr "Séquences mutables"
#: reference/datamodel.rst:359
msgid ""
@ -634,14 +634,14 @@ msgid ""
"and slicing notations can be used as the target of assignment and :keyword:"
"`del` (delete) statements."
msgstr ""
"Les séquences muables peuvent être modifiées après leur création. Les "
"Les séquences mutables peuvent être modifiées après leur création. Les "
"notations de tranches et de sous-ensembles peuvent être utilisées en tant "
"que cibles d'une affectation ou de l'instruction :keyword:`del` "
"(suppression)."
#: reference/datamodel.rst:363
msgid "There are currently two intrinsic mutable sequence types:"
msgstr "Il existe aujourd'hui deux types intrinsèques de séquences muables :"
msgstr "Il existe aujourd'hui deux types intrinsèques de séquences mutables :"
#: reference/datamodel.rst:370
msgid "Lists"
@ -669,9 +669,9 @@ msgid ""
"unhashable), byte arrays otherwise provide the same interface and "
"functionality as immutable :class:`bytes` objects."
msgstr ""
"Un objet *bytearray* est un tableau muable. Il est créé par la fonction "
"native constructeur :func:`bytearray`. À part la propriété d'être muable (et "
"donc de ne pas pouvoir calculer son empreinte par hachage), un tableau "
"Un objet *bytearray* est un tableau mutable. Il est créé par la fonction "
"native constructeur :func:`bytearray`. À part la propriété d'être mutable "
"(et donc de ne pas pouvoir calculer son empreinte par hachage), un tableau "
"d'octets possède la même interface et les mêmes fonctionnalités qu'un objet "
"immuable :class:`bytes`."
@ -681,7 +681,7 @@ msgid ""
"mutable sequence type, as does the :mod:`collections` module."
msgstr ""
"Le module d'extension :mod:`array` fournit un autre exemple de type de "
"séquence muable, de même que le module :mod:`collections`."
"séquence mutable, de même que le module :mod:`collections`."
#: reference/datamodel.rst:417
msgid "Set types"
@ -731,9 +731,9 @@ msgid ""
"constructor and can be modified afterwards by several methods, such as :meth:"
"`~set.add`."
msgstr ""
"Ils représentent les ensembles muables. Un ensemble est créé par la fonction "
"native constructeur :func:`set` et peut être modifié par la suite à l'aide "
"de différentes méthodes, par exemple :meth:`~set.add`."
"Ils représentent les ensembles mutables. Un ensemble est créé par la "
"fonction native constructeur :func:`set` et peut être modifié par la suite à "
"l'aide de différentes méthodes, par exemple :meth:`~set.add`."
#: reference/datamodel.rst:417
msgid "Frozen sets"
@ -793,7 +793,7 @@ msgstr ""
"Ils représentent les ensembles finis d'objets indicés par des valeurs "
"presque arbitraires. Les seuls types de valeurs non reconnus comme clés sont "
"les valeurs contenant des listes, des dictionnaires ou les autres types "
"muables qui sont comparés par valeur plutôt que par l'identifiant de "
"mutables qui sont comparés par valeur plutôt que par l'identifiant de "
"l'objet. La raison de cette limitation est qu'une implémentation efficace de "
"dictionnaire requiert que l'empreinte par hachage des clés reste constante "
"dans le temps. Les types numériques obéissent aux règles normales pour les "
@ -818,8 +818,8 @@ msgid ""
"Dictionaries are mutable; they can be created by the ``{...}`` notation (see "
"section :ref:`dict`)."
msgstr ""
"Les dictionnaires sont muables : ils peuvent être créés par la notation ``{…}"
"`` (reportez-vous à la section :ref:`dict`)."
"Les dictionnaires sont mutables : ils peuvent être créés par la notation "
"``{…}`` (reportez-vous à la section :ref:`dict`)."
#: reference/datamodel.rst:457
msgid ""
@ -1686,7 +1686,7 @@ msgstr ""
"dans l'objet code (parce que ce sont des valeurs calculées au moment de "
"l'exécution). Contrairement aux objets fonctions, les objets codes sont "
"immuables et ne contiennent aucune référence (directe ou indirecte) à des "
"objets muables."
"objets mutables."
#: reference/datamodel.rst:975
#, fuzzy
@ -4286,7 +4286,7 @@ msgstr ""
"abc.MutableMapping` pour aider à la création de ces méthodes à partir d'un "
"ensemble de base composé de :meth:`~object.__getitem__`, :meth:`~object."
"__setitem__`, :meth:`~object.__delitem__` et :meth:`keys`. Les séquences "
"muables doivent fournir les méthodes :meth:`append`, :meth:`count`, :meth:"
"mutables doivent fournir les méthodes :meth:`append`, :meth:`count`, :meth:"
"`index`, :meth:`extend`, :meth:`insert`, :meth:`pop`, :meth:`remove`, :meth:"
"`reverse` et :meth:`sort`, comme les objets :class:`listes <list>` standards "
"de Python. Enfin, les types séquences doivent implémenter l'addition (dans "

View File

@ -426,7 +426,7 @@ msgid ""
"supplied, the set is constructed from the elements resulting from the "
"comprehension."
msgstr ""
"Un agencement d'ensemble produit un nouvel objet ensemble muable, le contenu "
"Un agencement d'ensemble produit un nouvel objet ensemble mutable, le contenu "
"étant spécifié soit par une séquence d'expression, soit par une "
"compréhension. Quand une liste (dont les éléments sont séparés par des "
"virgules) est fournie, ses éléments sont évalués de la gauche vers la droite "
@ -521,7 +521,7 @@ msgid ""
msgstr ""
"Les restrictions relatives aux types des clés sont données dans la section :"
"ref:`types` (pour résumer, le type de la clé doit être :term:`hachable "
"<hashable>`, ce qui exclut tous les objets muables). Les collisions entre "
"<hashable>`, ce qui exclut tous les objets mutables). Les collisions entre "
"les clés dupliquées ne sont pas détectées ; la dernière valeur (celle qui "
"apparaît le plus à droite dans l'agencement) stockée prévaut pour une clé "
"donnée."

View File

@ -78,7 +78,7 @@ msgid ""
"attributes or items of mutable objects:"
msgstr ""
"Les assignations sont utilisées pour lier ou relier des noms à des valeurs "
"et modifier des attributs ou des éléments d'objets muables :"
"et modifier des attributs ou des éléments d'objets mutables :"
#: reference/simple_stmts.rst:96
msgid ""
@ -111,8 +111,8 @@ msgid ""
"section :ref:`types`)."
msgstr ""
"Une assignation est définie récursivement en fonction de la forme de la "
"cible (une liste). Quand la cible est une partie d'un objet muable (une "
"référence à un attribut, une sélection ou une tranche), l'objet muable doit "
"cible (une liste). Quand la cible est une partie d'un objet mutable (une "
"référence à un attribut, une sélection ou une tranche), l'objet mutable doit "
"effectuer l'assignation au final et décider de sa validité, voire lever une "
"exception si l'assignation n'est pas acceptable. Les règles suivies par les "
"différents types et les exceptions levées sont données dans les définitions "

View File

@ -124,7 +124,7 @@ msgstr ""
"pas au premier coup d'œil en Python et il peut être ignoré tant qu'on "
"travaille avec des types de base immuables (nombres, chaînes, *n*-uplets). "
"Cependant, les alias peuvent produire des effets surprenants sur la "
"sémantique d'un code Python mettant en jeu des objets muables comme les "
"sémantique d'un code Python mettant en jeu des objets mutables comme les "
"listes, les dictionnaires et la plupart des autres types. En général, leur "
"utilisation est bénéfique au programme car les alias se comportent, d'un "
"certain point de vue, comme des pointeurs. Par exemple, transmettre un objet "
@ -771,7 +771,7 @@ msgid ""
"by all *Dog* instances::"
msgstr ""
"Comme nous l'avons vu dans :ref:`tut-object`, les données partagées :term:"
"`muable <muable>` (telles que les listes, dictionnaires, etc.) peuvent avoir "
"`mutable <muable>` (telles que les listes, dictionnaires, etc.) peuvent avoir "
"des effets surprenants. Par exemple, la liste *tricks* dans le code suivant "
"ne devrait pas être utilisée en tant que variable de classe car, dans ce "
"cas, une seule liste est partagée par toutes les instances de *Dog* ::"

View File

@ -772,7 +772,7 @@ msgid ""
msgstr ""
"**Avertissement important :** la valeur par défaut n'est évaluée qu'une "
"seule fois. Ceci fait une différence lorsque cette valeur par défaut est un "
"objet muable tel qu'une liste, un dictionnaire ou des instances de la "
"objet mutable tel qu'une liste, un dictionnaire ou des instances de la "
"plupart des classes. Par exemple, la fonction suivante accumule les "
"arguments qui lui sont passés au fil des appels successifs ::"
@ -1422,7 +1422,7 @@ msgid ""
"to it (items inserted into a list)."
msgstr ""
"En fait, *appels par référence d'objets* serait sans doute une description "
"plus juste dans la mesure où, si un objet muable est passé en argument, "
"plus juste dans la mesure où, si un objet mutable est passé en argument, "
"l'appelant verra toutes les modifications qui lui auront été apportées par "
"l'appelé (insertion d'éléments dans une liste…)."

View File

@ -148,7 +148,7 @@ msgstr ""
"Vous avez probablement remarqué que les méthodes qui ne font que modifier la "
"liste, comme ``insert``, ``remove`` ou ``sort``, n'affichent pas de valeur "
"de retour (elles renvoient ``None``) [#]_. C'est un principe respecté par "
"toutes les structures de données muables en Python."
"toutes les structures de données mutables en Python."
#: tutorial/datastructures.rst:128
msgid ""
@ -424,7 +424,7 @@ msgstr ""
"celles-ci sont souvent nécessaires (notamment lorsqu'un *n*-uplet fait "
"partie d'une expression plus longue). Il n'est pas possible d'affecter de "
"valeur à un élément d'un *n*-uplet ; par contre, il est en revanche possible "
"de créer des *n*-uplets contenant des objets muables, comme des listes."
"de créer des *n*-uplets contenant des objets mutables, comme des listes."
#: tutorial/datastructures.rst:408
msgid ""
@ -442,7 +442,7 @@ msgstr ""
"séquences hétérogènes d'éléments auxquelles on accède par "
 dissociation » (*unpacking* en anglais, voir plus loin) ou par indice (ou "
"même par attribut dans le cas des :func:`namedtuples <collections."
"namedtuple>`). Les listes sont souvent :term:`muables <muable>` et "
"namedtuple>`). Les listes sont souvent :term:`mutables <muable>` et "
"contiennent des éléments généralement homogènes auxquels on accède en "
"itérant sur la liste."
@ -555,7 +555,7 @@ msgstr ""
"n'importe quel type immuable ; les chaînes de caractères et les nombres "
"peuvent toujours être des clés. Des *n*-uplets peuvent être utilisés comme "
"clés s'ils ne contiennent que des chaînes, des nombres ou des *n*-uplets ; "
"si un *n*-uplet contient un objet muable, de façon directe ou indirecte, il "
"si un *n*-uplet contient un objet mutable, de façon directe ou indirecte, il "
"ne peut pas être utilisé comme une clé. Vous ne pouvez pas utiliser des "
"listes comme clés, car les listes peuvent être modifiées en place en "
"utilisant des affectations par position, par tranches ou via des méthodes "

View File

@ -528,7 +528,7 @@ msgid ""
"type, i.e. it is possible to change their content::"
msgstr ""
"Mais à la différence des chaînes qui sont :term:`immuables <immutable>`, les "
"listes sont :term:`muables <mutable>` : il est possible de modifier leur "
"listes sont :term:`mutables <mutable>` : il est possible de modifier leur "
"contenu ::"
#: tutorial/introduction.rst:430

View File

@ -3105,7 +3105,7 @@ msgstr ""
"Les objets ``Literal`` lèvent maintenant une exception :exc:`TypeError` lors "
"des comparaisons d'égalités si n'importe quel de leurs paramètres n'est pas :"
"term:`immuable <immutable>`. Prenez-note que déclarer un ``Literal`` avec un "
"paramètre muable ne lève pas une erreur ::"
"paramètre mutable ne lève pas une erreur ::"
#: whatsnew/3.9.rst:1519
msgid "(Contributed by Yurii Karabas in :issue:`42345`.)"