forked from AFPy/python-docs-fr
Compare commits
71 Commits
26ccd93ef1
...
89c55fc592
Author | SHA1 | Date |
---|---|---|
Christophe Nanteuil | 89c55fc592 | |
douuvid | 8713216576 | |
pilou | 58cd92ed64 | |
Julien Palard | f770a90e58 | |
Christophe Nanteuil | d8ce7c55bf | |
Benjamin_Loison | c47af9c54a | |
deronnax | ea2647a58e | |
Christophe Nanteuil | a94ba446df | |
Julien Palard | 4b1228c08d | |
Julien Palard | b3367a2bd5 | |
Julien Palard | 0798ce74be | |
Julien Palard | 497dd9aad4 | |
Julien Palard | 3697e62ab7 | |
Christophe Nanteuil | 68df6591be | |
Christophe Nanteuil | 0759b8b1ba | |
Christophe Nanteuil | bb46c79e45 | |
Julien Palard | c584ff6fbb | |
Christophe Nanteuil | 2fd8387137 | |
Julien Palard | c68566b785 | |
deronnax | 67f8f6cd58 | |
deronnax | 3ecd689d5a | |
deronnax | dfa3ba78a2 | |
deronnax | 5de4b94443 | |
deronnax | 67d7550462 | |
Julien Palard | 50462a2278 | |
Julien Palard | 59f5cc0175 | |
deronnax | 39e09a16a1 | |
deronnax | 5e60db8d89 | |
deronnax | 17504f9d45 | |
deronnax | 5eb0bc51f1 | |
deronnax | f7e629f5eb | |
deronnax | f35c0b14f9 | |
deronnax | 56671d24d3 | |
Julien Palard | 0059f17b2f | |
deronnax | 7fb3fc2ab3 | |
deronnax | b1cba7bb2b | |
deronnax | 554171c6b0 | |
deronnax | cd05065b55 | |
Christophe Nanteuil | b6b4c7e394 | |
Christophe Nanteuil | 0dba42c44d | |
Christophe Nanteuil | b27e667e8d | |
Christophe Nanteuil | 25448932ff | |
Julien Palard | 6c6617b0ea | |
Christophe Nanteuil | a830148cfc | |
Thevenel | 21a0694bbe | |
Thevenel | fb964077fc | |
nicolas talabardon | 88312851b0 | |
Julien Palard | c5cb1d9e65 | |
Synss | 8b33e6ad03 | |
nicolas talabardon | 30cedb7566 | |
Thevenel | 769f0ec9e7 | |
vstinner | 70a38f9719 | |
finevine | e386f1926f | |
Julien Palard | eef2c04e9e | |
zoe | 4cb6264f88 | |
mounasb | 4ac1f07021 | |
Rémi Lapeyre | a57e01d8e0 | |
nicolas talabardon | 74549be6bc | |
nicolas talabardon | cb9d346d5f | |
finevine | c2c85f28c0 | |
NicolasGibaud | 92e43cb2cb | |
Rémi Lapeyre | fa5ab2955f | |
finevine | 4232990623 | |
finevine | f20eb52ad6 | |
Iucounu | 2d33759ac3 | |
Iucounu | 5ef8287742 | |
CedricM | 5209ba6855 | |
Vincent Poulailleau | 9a60e67cd0 | |
Iucounu | a2721271ef | |
Alan Zirek | fda2a021bd | |
Julien Palard | d7149ee267 |
|
@ -7,3 +7,4 @@ venv/
|
|||
.potodo/
|
||||
locales/
|
||||
.venv/
|
||||
.envrc
|
||||
|
|
|
@ -0,0 +1,105 @@
|
|||
#!/usr/bin/env python
|
||||
"""Check consistency of colons at the end of entries.
|
||||
|
||||
It returns 0 if nothing was done, 1 if files were modified.
|
||||
"""
|
||||
import sys
|
||||
import pathlib
|
||||
import polib
|
||||
|
||||
|
||||
def colon_is_visible(msg):
|
||||
if msg.endswith(": ::"):
|
||||
return True
|
||||
if msg.endswith(" ::"):
|
||||
return False
|
||||
if msg.endswith("::"):
|
||||
return True
|
||||
raise ValueError("Don't know if msg ends with a visible or an invisible colon.")
|
||||
|
||||
|
||||
def fix_double_colon(filename, entry, check, verbose):
|
||||
fixed = entry.msgstr.rstrip(": \u202f\u00A0")
|
||||
if colon_is_visible(entry.msgid):
|
||||
fixed += "\u00A0::"
|
||||
message = r"Expected translation to end with: '\u00A0::'"
|
||||
else:
|
||||
fixed += " ::"
|
||||
message = "Expected translation to end with: ' ::'"
|
||||
if entry.msgstr != fixed:
|
||||
if check:
|
||||
print(f"{filename}:{entry.linenum}: {message}")
|
||||
if verbose:
|
||||
print(entry)
|
||||
else:
|
||||
entry.msgstr = fixed
|
||||
return True
|
||||
return False
|
||||
|
||||
|
||||
def fix_simple_colon(filename, entry, check, verbose):
|
||||
fixed = entry.msgstr.rstrip(": \u202f\u00A0")
|
||||
fixed += "\u00A0:"
|
||||
if entry.msgstr != fixed:
|
||||
if check:
|
||||
print(
|
||||
rf"{filename}:{entry.linenum}: Expected translation to end with: '\u00A0:'"
|
||||
)
|
||||
if verbose:
|
||||
print(entry)
|
||||
else:
|
||||
entry.msgstr = fixed
|
||||
return True
|
||||
return False
|
||||
|
||||
|
||||
def check(filename, check, verbose):
|
||||
try:
|
||||
pofile = polib.pofile(filename)
|
||||
except OSError:
|
||||
print(f"{filename} doesn't seem to be a .po file", file=sys.stderr)
|
||||
return True
|
||||
has_errors = False
|
||||
for entry in pofile:
|
||||
if not entry.msgstr:
|
||||
continue # No need to check untranslated entries.
|
||||
if entry.msgid.endswith("::"):
|
||||
has_errors |= fix_double_colon(filename, entry, check, verbose)
|
||||
elif entry.msgid.endswith(":"):
|
||||
has_errors |= fix_simple_colon(filename, entry, check, verbose)
|
||||
|
||||
if not check and has_errors:
|
||||
pofile.save()
|
||||
return has_errors
|
||||
|
||||
|
||||
def parse_args():
|
||||
import argparse
|
||||
|
||||
parser = argparse.ArgumentParser(description=__doc__)
|
||||
parser.add_argument(
|
||||
"--check",
|
||||
action="store_true",
|
||||
default=False,
|
||||
help="only display suspected entries, do not fix.",
|
||||
)
|
||||
parser.add_argument(
|
||||
"--verbose",
|
||||
action="store_true",
|
||||
default=False,
|
||||
help="display whole entry",
|
||||
)
|
||||
parser.add_argument("path", nargs="*")
|
||||
return parser.parse_args()
|
||||
|
||||
|
||||
def main():
|
||||
has_errors = False
|
||||
args = parse_args()
|
||||
for filename in args.path:
|
||||
has_errors |= check(filename, args.check, args.verbose)
|
||||
sys.exit(has_errors)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
|
@ -0,0 +1,23 @@
|
|||
#!/bin/sh
|
||||
|
||||
if [ -z "$*" ]
|
||||
then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
grep -L '^# Copyright (C) [0-9-]*, Python Software Foundation' $* | while read -r file
|
||||
do
|
||||
echo "Please update the po comment in $file"
|
||||
done
|
||||
grep -L '^"Project-Id-Version: Python 3\\n"$' $* | while read -r file
|
||||
do
|
||||
echo "Please update the 'Project-Id-Version' header in $file"
|
||||
done
|
||||
grep -L '^"Language: fr\\n"$' $* | while read -r file
|
||||
do
|
||||
echo "Please update the 'Language' header in $file"
|
||||
done
|
||||
grep -L '^"Language-Team: FRENCH <traductions@lists.afpy.org>\\n"' $* | while read -r file
|
||||
do
|
||||
echo "Please update the 'Language-Team' header in $file"
|
||||
done
|
|
@ -0,0 +1,66 @@
|
|||
#!/bin/sh
|
||||
|
||||
|
||||
_usage() {
|
||||
echo "Usage: $0 [-n] PO_FILE"
|
||||
echo "Ease the correction of fuzzies inserted by merge commits"
|
||||
echo
|
||||
echo "-n, --no-edit do not launch po editor"
|
||||
exit
|
||||
}
|
||||
|
||||
LAUNCH_EDIT=1
|
||||
if [ $# -eq 2 ]; then
|
||||
if [ "$1" -eq "-n" ] || [ "$1" -eq "--no-edit" ]; then
|
||||
LAUNCH_EDIT=0
|
||||
else
|
||||
_usage
|
||||
fi
|
||||
shift
|
||||
fi
|
||||
|
||||
if [ $# -ne 1 ]; then
|
||||
_usage
|
||||
fi
|
||||
|
||||
if [ ! -f "$1" ]; then
|
||||
echo "$1: file not found"
|
||||
_usage
|
||||
fi
|
||||
|
||||
# Temp directory to filter files before display
|
||||
TMP_DIR=$(mktemp -d /tmp/fuzzy_diff.XXXXXX || exit 1)
|
||||
trap 'rm --force --recursive "${TMP_DIR}"' EXIT
|
||||
|
||||
|
||||
PO_EDITOR=poedit
|
||||
DIFFTOOL=$(which $(git config diff.tool))
|
||||
|
||||
if [ ! -x "$DIFFTOOL" ]; then
|
||||
echo "git diff.tool seems not configured"
|
||||
_usage
|
||||
fi
|
||||
|
||||
PO_FILE=$1
|
||||
|
||||
# search for revs where fuzzy was added or suppressed
|
||||
# and filter where commit message contains 'merge'
|
||||
FUZZY_REVS=$(git log --oneline -S '#, fuzzy' ${PO_FILE} | \
|
||||
grep -i 'merge' | \
|
||||
awk '{ print $1 }')
|
||||
|
||||
if [ ${LAUNCH_EDIT} -eq 1 ]; then
|
||||
${PO_EDITOR} "${PO_FILE}" 2>/dev/null &
|
||||
fi
|
||||
|
||||
for sha in ${FUZZY_REVS} ; do
|
||||
# filter files à la mode textconv
|
||||
git show ${sha}:${PO_FILE} | grep -v -e '^#:' -e '^"PO' > ${TMP_DIR}/right.po
|
||||
git show ${sha}^:${PO_FILE} | grep -v -e '^#:' -e '^"PO' > ${TMP_DIR}/left.po
|
||||
"${DIFFTOOL}" ${TMP_DIR}/left.po ${TMP_DIR}/right.po
|
||||
done
|
||||
|
||||
# clean up temp directory
|
||||
rm --force --recursive "${TMP_DIR}"
|
||||
trap - EXIT
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
#!/usr/bin/env python
|
||||
"""Measure line length in given files, run as:
|
||||
|
||||
python line-length.py *.po
|
||||
|
||||
It does not count zero-width caracters from the Mn Unicode category
|
||||
(Nonspacing Mark).
|
||||
|
||||
It returns 0 on success, 1 on failure.
|
||||
"""
|
||||
|
||||
from unicodedata import category
|
||||
import fileinput
|
||||
import sys
|
||||
|
||||
SOFT_LIMIT = 80 # used for splitables lines (with spaces in them)
|
||||
HARD_LIMIT = 88 # used for non-splitables lines (without spaces in them)
|
||||
|
||||
|
||||
def clean(line):
|
||||
return "".join(char for char in line if category(char) != "Mn").rstrip("\n")
|
||||
|
||||
|
||||
return_code = 0
|
||||
|
||||
for line in fileinput.input(encoding="utf-8"):
|
||||
line = clean(line)
|
||||
limit = SOFT_LIMIT if line.count(" ") > 1 else HARD_LIMIT
|
||||
if len(line) > limit:
|
||||
print(
|
||||
f"{fileinput.filename()}:{fileinput.filelineno()} line too long "
|
||||
f"({len(line)} > {limit} characters)",
|
||||
file=sys.stderr,
|
||||
)
|
||||
return_code = 1
|
||||
|
||||
|
||||
sys.exit(return_code)
|
|
@ -0,0 +1,13 @@
|
|||
---
|
||||
|
||||
pipeline:
|
||||
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 verifs
|
104
CONTRIBUTING.rst
104
CONTRIBUTING.rst
|
@ -1,5 +1,5 @@
|
|||
Guide de contribution à la documentation via GitHub
|
||||
###################################################
|
||||
Guide de contribution à la documentation
|
||||
########################################
|
||||
|
||||
Prérequis
|
||||
=========
|
||||
|
@ -104,6 +104,10 @@ ce qui suit après vous être assuré que ``~/.local/bin/`` se trouve dans votre
|
|||
|
||||
chmod a+x ~/.local/bin/podiff
|
||||
|
||||
Allez ensuite dans le répertoire du dépôt récupéré (``python-docs-fr``) et faites :
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
git config diff.podiff.textconv podiff
|
||||
|
||||
|
||||
|
@ -192,7 +196,7 @@ Vous pouvez commencer par des tâches faciles comme réviser les entrées
|
|||
de ``make fuzzy``). Une entrée *fuzzy* correspond à une entrée déjà traduite
|
||||
mais dont la source en anglais a été modifiée depuis (correction orthographique,
|
||||
changement d'un terme, ajout ou suppression d'une phrase…). Elles sont
|
||||
généralement plus « faciles » à traduire.
|
||||
généralement plus « faciles » à traduire.
|
||||
|
||||
Vous pouvez également relire des entrées déjà traduites pour vous faire une
|
||||
idée, et passer ensuite à la traduction de celles qui ne le sont pas encore.
|
||||
|
@ -215,12 +219,12 @@ Réserver le fichier
|
|||
Une fois que vous avez choisi un fichier sur lequel travailler vous pouvez nous
|
||||
le signaler par différents moyens :
|
||||
|
||||
* Soit en ouvrant un `ticket sur Github <https://github.com/python/python-docs-fr/issues>`_
|
||||
* Soit en ouvrant un `ticket sur Gitea <https://git.afpy.org/AFPy/python-docs-fr/issues>`_
|
||||
en indiquant dans le titre ``Je travaille sur DOSSIER/FICHIER.po``
|
||||
(par exemple « Je travaille sur library/sys.po »).
|
||||
|
||||
Ceci permet à `potodo`_ de détecter via l'API Github les fichiers ``.po`` réservés
|
||||
dans les tickets et les *pull requests*.
|
||||
Ceci permet à `potodo`_ de détecter via l'API Gitea les fichiers ``.po`` réservés
|
||||
dans les tickets et les demandes d'ajout.
|
||||
|
||||
* Soit en créant un sujet sur le
|
||||
`discuss de l'AFPy <https://discuss.afpy.org/>`_ dans la section Traduction
|
||||
|
@ -252,7 +256,7 @@ fichier sur lequel on travaille. Par exemple, si vous travaillez sur
|
|||
|
||||
.. code-block:: bash
|
||||
|
||||
git checkout -b library-sys upstream/3.11
|
||||
git switch -c library-sys upstream/3.11
|
||||
|
||||
|
||||
|
||||
|
@ -300,7 +304,7 @@ compilation ne devrait pas échouer.
|
|||
make
|
||||
|
||||
|
||||
Vérifiez alors le rendu de la traduction « en vrai ». Lancez un serveur de
|
||||
Vérifiez alors le rendu de la traduction « en vrai ». Lancez un serveur de
|
||||
documentation local :
|
||||
|
||||
.. code-block:: bash
|
||||
|
@ -317,14 +321,14 @@ Vous pouvez recommencer les étapes de cette section autant de fois que
|
|||
nécessaire.
|
||||
|
||||
Poedit donne beaucoup d'avertissements, par exemple pour vous informer que
|
||||
« la traduction devrait commencer par une majuscule » car c'est le cas pour
|
||||
« la traduction devrait commencer par une majuscule » car c'est le cas pour
|
||||
la source. Ces avertissements ne sont pas tous fondés. En cas de doute,
|
||||
*affichez et relisez la page HTML produite* avec ``make htmlview``.
|
||||
|
||||
Quatrième étape : publier sa traduction
|
||||
=======================================
|
||||
|
||||
Une fois que le *make verifs* ne lève pas d'erreur et que vous êtes certains de bien respecter les
|
||||
Une fois que le ``make verifs`` ne lève pas d'erreur et que vous êtes certains de bien respecter les
|
||||
`Conventions`_ de traduction, vient le moment d'envoyer votre travail sur le dépôt local.
|
||||
|
||||
* ``git add`` place nos modifications dans l'index de Git en attendant
|
||||
|
@ -343,34 +347,35 @@ Une fois que le *make verifs* ne lève pas d'erreur et que vous êtes certains d
|
|||
|
||||
|
||||
|
||||
Poussez ensuite vos modifications sur votre *fork* avec ``git push``.
|
||||
Poussez ensuite vos modifications sur votre bifurcation (*fork*) avec ``git push``.
|
||||
Le ``-u`` n'est utile qu'une fois pour que votre client git se souvienne que cette
|
||||
branche est liée à votre *fork* (et donc que vos futurs ``git pull`` et
|
||||
branche est liée à votre bifurcation (et donc que vos futurs ``git pull`` et
|
||||
``git push`` sachent quoi tirer).
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
git push --set-upstream origin
|
||||
|
||||
Sur Github
|
||||
----------
|
||||
Sur Gitea
|
||||
---------
|
||||
|
||||
La commande précédente vous affiche un lien pour ouvrir une *pull request* sur
|
||||
Github. Si vous l'avez manqué, allez simplement sur https://github.com/python/python-docs-fr/pulls
|
||||
et un joli bouton « Compare & pull request » devrait apparaître au bout de
|
||||
quelques secondes vous indiquant que vous pouvez demander une *pull request*.
|
||||
La commande précédente vous affiche un lien pour ouvrir une demande d'ajout sur
|
||||
Gitea. Si vous l'avez manqué, allez simplement sur
|
||||
https://git.afpy.org/AFPy/python-docs-fr/pulls et cliquez
|
||||
sur le bouton « Nouvelle demande d'ajout ».
|
||||
|
||||
Mettez dans le commentaire de la *pull request* le texte suivant :
|
||||
« Closes #XXXX » où XXXX est le numéro du ticket GitHub créé pour réserver le fichier traduit.
|
||||
Cela permet à Github de lier la *pull request* au ticket de réservation.
|
||||
Mettez dans le commentaire de la demande d'ajout le texte suivant :
|
||||
« Closes #XXXX » où XXXX est le numéro du ticket Gitea créé pour réserver le
|
||||
fichier traduit. Cela permet à Gitea de lier la demande d'ajout au ticket de
|
||||
réservation.
|
||||
|
||||
Il peut arriver que vous ayez besoin de reprendre votre PR sur votre
|
||||
ordinateur après avoir fait des modifications en ligne sur GitHub,
|
||||
par exemple lorsque GitHub vous offre la possibilité de faire un commit
|
||||
Il peut arriver que vous ayez besoin de reprendre votre demande d'ajout sur votre
|
||||
ordinateur après avoir fait des modifications en ligne sur Gitea,
|
||||
par exemple lorsque Gitea vous offre la possibilité de faire un commit
|
||||
automatique contenant les suggestions proposées pendant la revue.
|
||||
Cela fonctionne bien, mais le résultat n'est pas toujours accepté par
|
||||
``powrap``. Si cela arrive, vous pouvez récupérer le commit fait par
|
||||
GitHub puis relancer ``powrap`` :
|
||||
Gitea puis relancer ``powrap`` :
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
|
@ -380,50 +385,16 @@ GitHub puis relancer ``powrap`` :
|
|||
git commit -m "Formatage après commit automatique"
|
||||
git push
|
||||
|
||||
Sur une autre forge
|
||||
-------------------
|
||||
|
||||
Quand vous avez poussé vos modifications, il y a plusieurs possibilités.
|
||||
|
||||
Soit vous signalez via le `discuss de l'AFPy <https://discuss.afpy.org/>`_ ou sur IRC que
|
||||
vous avez traduit une section. Nous viendrons récupérer les modifications pour les intégrer
|
||||
sur Github.
|
||||
|
||||
Soit en créant un *`bundle <https://git-scm.com/book/fr/v2/Utilitaires-Git-Empaquetage-bundling>`_* Git,
|
||||
pour cela, il faut créer un fichier contenant les différentes modifications effectuées.
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
git bundle create <name>.bundle <commit_id1>..<commit_id2>
|
||||
|
||||
Puis nous partager ce *bundle* sur le `discuss de l'AFPy <https://discuss.afpy.org/>`_ pour pouvoir l'intégrer.
|
||||
|
||||
|
||||
À partir de là, quelqu'un passera en revue vos modifications, et vous fera des
|
||||
suggestions et corrections. Pour les prendre en compte, retournez sur votre branche
|
||||
contenant le fichier concerné (au cas où vous auriez commencé quelque chose d'autre
|
||||
sur une autre branche) :
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
git checkout library-sys
|
||||
git pull # pour rapatrier les modifications que vous auriez acceptées
|
||||
# sur l'interface web.
|
||||
|
||||
# Réglez les problèmes, puis commitez à nouveau :
|
||||
git commit --all --message "prise en compte des remarques"
|
||||
git push
|
||||
|
||||
|
||||
Vous avez peut-être remarqué que cela ressemble à un triangle, avec un
|
||||
segment manquant :
|
||||
segment manquant :
|
||||
|
||||
- vous récupérez depuis *upstream* (le dépôt commun public sur Github) ;
|
||||
- vous poussez sur *origin* (votre clone sur Github).
|
||||
- vous récupérez depuis *upstream* (le dépôt commun public sur Gitea) ;
|
||||
- vous poussez sur *origin* (votre clone sur Gitea).
|
||||
|
||||
C'est le travail de quelqu'un d'autre d'ajouter le dernier segment,
|
||||
de votre *origin* au *upstream* public, pour « boucler la boucle ». C'est le
|
||||
rôle des personnes qui *fusionnent* les *pull requests* après les avoir relues.
|
||||
rôle des personnes qui fusionnent les demandes d'ajout après les avoir relues.
|
||||
|
||||
Vous avez peut-être aussi remarqué que vous n'avez jamais commité sur une
|
||||
branche de version (3.9, 3.10, etc.), seulement récupéré les
|
||||
|
@ -547,8 +518,8 @@ Balises
|
|||
Ne traduisez pas le contenu des balises comme ``:ref:...`` ou ``:class:...``.
|
||||
Vous devez cependant traduire les balises ``:term:...``, qui font référence à
|
||||
une primitive ou un concept défini dans le `glossaire Python <https://docs.python.org/fr/3/glossary.html>`_.
|
||||
La syntaxe est ``:term:nom_français<nom_anglais>``. Par exemple, traduisez
|
||||
`` :term:`dictionary` `` en `` :term:`dictionnaire <dictionary>` ``.
|
||||
La syntaxe est ``:term:`nom_français <nom_anglais>```. Par exemple, traduisez
|
||||
``:term:`dictionary``` en ``:term:`dictionnaire <dictionary>```.
|
||||
|
||||
Comme le glossaire est déjà traduit, il y a forcément une correspondance à chaque
|
||||
terme que vous pouvez rencontrer.
|
||||
|
@ -585,6 +556,7 @@ bytecode code intermédiaire
|
|||
callback fonction de rappel
|
||||
call stack pile d'appels
|
||||
caught (exception) interceptée
|
||||
code points points de code
|
||||
daemon *daemon*
|
||||
debugging débogage
|
||||
deep copy copie récursive (préféré), ou copie profonde
|
||||
|
@ -842,7 +814,7 @@ En novembre 2022, le dépôt de cette traduction a migré de GitHub à une
|
|||
instance de Gitea hébergée par l'AFPy. Si vous contribuiez auparavant
|
||||
sur GitHub, voici comment s'y prendre pour la migration :
|
||||
|
||||
- Suivez le guide `plus haut <cloner_>`_ pour faire une copie (*fork*)
|
||||
- Suivez le guide `plus haut <cloner_>`_ pour faire une bifurcation (*fork*)
|
||||
du dépôt sur Gitea. De manière facultative mais recommandée, ajoutez
|
||||
votre clé SSH à votre profil Gitea comme expliqué ci-dessus (vous
|
||||
aviez probablement une clé sur GitHub, auquel cas il suffit de
|
||||
|
|
72
Makefile
72
Makefile
|
@ -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 := 1b736838e6ae1b4ef42cdd27c2708face908f92c
|
||||
CPYTHON_CURRENT_COMMIT := 2e0ead5f22bb7699d70f1dfb6d1eadff124f2688
|
||||
LANGUAGE := fr
|
||||
BRANCH := 3.11
|
||||
|
||||
|
@ -85,7 +85,7 @@ else
|
|||
endif
|
||||
|
||||
.PHONY: all
|
||||
all: ensure_prerequisites
|
||||
all: ensure_build_prerequisites
|
||||
git -C venv/cpython checkout $(CPYTHON_CURRENT_COMMIT) || (git -C venv/cpython fetch && git -C venv/cpython checkout $(CPYTHON_CURRENT_COMMIT))
|
||||
mkdir -p locales/$(LANGUAGE)/LC_MESSAGES/
|
||||
$(CP_CMD) -u --parents *.po */*.po locales/$(LANGUAGE)/LC_MESSAGES/
|
||||
|
@ -108,13 +108,28 @@ venv/cpython/.git/HEAD:
|
|||
git clone https://github.com/python/cpython venv/cpython
|
||||
|
||||
|
||||
.PHONY: ensure_prerequisites
|
||||
ensure_prerequisites: venv/cpython/.git/HEAD
|
||||
.PHONY: ensure_test_prerequisites
|
||||
ensure_test_prerequisites:
|
||||
@if ! (hunspell -v >/dev/null 2>&1); then \
|
||||
echo "You're missing dependencies please install: hunspell and the fr-toutesvariantes dictionary."; \
|
||||
echo "The dictionary is available here http://grammalecte.net:8080/dir?ci=tip&name=gc_lang/fr/oxt/Dictionnaires/dictionaries"; \
|
||||
echo "and also included in the hunspell-fr-comprehensive Debian package."; \
|
||||
exit 1; \
|
||||
fi
|
||||
@if ! (pospell --help >/dev/null 2>&1 && potodo --help >/dev/null 2>&1); then \
|
||||
echo "You're missing dependencies please install:"; \
|
||||
echo ""; \
|
||||
echo " python -m pip install -r requirements.txt"; \
|
||||
exit 1; \
|
||||
fi
|
||||
|
||||
.PHONY: ensure_build_prerequisites
|
||||
ensure_build_prerequisites: venv/cpython/.git/HEAD
|
||||
@if ! (blurb help >/dev/null 2>&1 && sphinx-build --version >/dev/null 2>&1); then \
|
||||
git -C venv/cpython/ checkout $(BRANCH); \
|
||||
echo "You're missing dependencies please install:"; \
|
||||
echo ""; \
|
||||
echo " python -m pip install -r requirements.txt -r venv/cpython/Doc/requirements.txt"; \
|
||||
echo " python -m pip install -r venv/cpython/Doc/requirements.txt"; \
|
||||
exit 1; \
|
||||
fi
|
||||
|
||||
|
@ -123,11 +138,11 @@ htmlview: MODE=htmlview
|
|||
htmlview: all
|
||||
|
||||
.PHONY: todo
|
||||
todo: ensure_prerequisites
|
||||
potodo --exclude venv .venv $(EXCLUDED)
|
||||
todo: ensure_test_prerequisites
|
||||
potodo --api-url 'https://git.afpy.org/api/v1/repos/AFPy/python-docs-fr/issues?state=open&type=issues' --exclude venv .venv $(EXCLUDED)
|
||||
|
||||
.PHONY: wrap
|
||||
wrap: ensure_prerequisites
|
||||
wrap: ensure_test_prerequisites
|
||||
@echo "Re wrapping modified files"
|
||||
powrap -m
|
||||
|
||||
|
@ -136,17 +151,17 @@ SRCS = $(shell git diff --name-only $(BRANCH) | grep '.po$$')
|
|||
DESTS = $(addprefix $(POSPELL_TMP_DIR)/,$(addsuffix .out,$(SRCS)))
|
||||
|
||||
.PHONY: spell
|
||||
spell: ensure_prerequisites $(DESTS)
|
||||
spell: ensure_test_prerequisites $(DESTS)
|
||||
|
||||
.PHONY: line-length
|
||||
line-length:
|
||||
@echo "Searching for long lines..."
|
||||
@awk '{if (length(gensub(/శ్రీనివాస్/, ".", "g", $$0)) > 80 && length(gensub(/[^ ]/, "", "g")) > 1) {print FILENAME ":" FNR, "line too long:", $$0; ERRORS+=1}} END {if (ERRORS>0) {exit 1}}' *.po */*.po
|
||||
@echo Checking line length...
|
||||
@if [ -n "$(SRCS)" ]; then python .scripts/line-length.py $(SRCS); fi
|
||||
|
||||
.PHONY: sphinx-lint
|
||||
sphinx-lint:
|
||||
@echo "Checking all files using sphinx-lint..."
|
||||
@sphinx-lint --enable all --disable line-too-long *.po */*.po
|
||||
sphinx-lint: ensure_test_prerequisites
|
||||
@echo Checking reStructuredText syntax...
|
||||
@if [ -n "$(SRCS)" ]; then sphinx-lint --enable all --disable line-too-long $(SRCS); fi
|
||||
|
||||
$(POSPELL_TMP_DIR)/%.po.out: %.po dict
|
||||
@echo "Pospell checking $<..."
|
||||
|
@ -154,30 +169,21 @@ $(POSPELL_TMP_DIR)/%.po.out: %.po dict
|
|||
pospell -p dict -l fr_FR $< && touch $@
|
||||
|
||||
.PHONY: fuzzy
|
||||
fuzzy: ensure_prerequisites
|
||||
potodo -f --exclude venv .venv $(EXCLUDED)
|
||||
fuzzy: ensure_test_prerequisites
|
||||
potodo --only-fuzzy --api-url 'https://git.afpy.org/api/v1/repos/AFPy/python-docs-fr/issues?state=open&type=issues' --exclude venv .venv $(EXCLUDED)
|
||||
|
||||
.PHONY: check-headers
|
||||
check-headers:
|
||||
@grep -L '^# Copyright (C) [0-9-]*, Python Software Foundation' *.po */*.po | while read -r file;\
|
||||
do \
|
||||
echo "Please update the po comment in $$file"; \
|
||||
done
|
||||
@grep -L '^"Project-Id-Version: Python 3\\n"$$' *.po */*.po | while read -r file;\
|
||||
do \
|
||||
echo "Please update the 'Project-Id-Version' header in $$file"; \
|
||||
done
|
||||
@grep -L '^"Language: fr\\n"$$' *.po */*.po | while read -r file;\
|
||||
do \
|
||||
echo "Please update the 'Language' header in $$file"; \
|
||||
done
|
||||
@grep -L '^"Language-Team: FRENCH <traductions@lists.afpy.org>\\n"' *.po */*.po | while read -r file;\
|
||||
do \
|
||||
echo "Please update the 'Language-Team' header in $$file"; \
|
||||
done
|
||||
@echo Checking po headers...
|
||||
@sh .scripts/check-headers.sh $(SRCS)
|
||||
|
||||
.PHONY: check-colons
|
||||
check-colons:
|
||||
@echo Checking colons...
|
||||
@python .scripts/check-colon.py --check $(SRCS)
|
||||
|
||||
.PHONY: verifs
|
||||
verifs: spell line-length sphinx-lint check-headers
|
||||
verifs: spell line-length check-headers check-colons sphinx-lint
|
||||
|
||||
.PHONY: clean
|
||||
clean:
|
||||
|
|
|
@ -61,7 +61,7 @@ vous signifiez votre acceptation de cet accord.
|
|||
Historique du projet
|
||||
--------------------
|
||||
|
||||
- vers 2000 : `lancement du projet <https://julienpalard.frama.io/write-the-docs-paris-19/#/2>`_ ;
|
||||
- vers 2000 : lancement du projet ;
|
||||
- vers 2012 : `reprise <https://github.com/AFPy/python_doc_fr>`_ par l'`AFPy <https://www.afpy.org/>`_ ;
|
||||
- 2016 : 15 % de la documentation traduite ;
|
||||
- 2017 : le projet devient traduction officielle de la documentation Python par la `PEP 545 <https://www.python.org/dev/peps/pep-0545/>`_ ;
|
||||
|
|
8
about.po
8
about.po
|
@ -6,13 +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: 2022-07-08 17:54+0200\n"
|
||||
"PO-Revision-Date: 2023-02-16 12:02+0100\n"
|
||||
"Last-Translator: Julien Palard <julien@palard.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.2.2\n"
|
||||
|
||||
#: about.rst:3
|
||||
msgid "About these documents"
|
||||
|
@ -41,7 +42,7 @@ msgstr ""
|
|||
|
||||
#: about.rst:20
|
||||
msgid "Many thanks go to:"
|
||||
msgstr "Merci beaucoup à :"
|
||||
msgstr "Merci beaucoup à :"
|
||||
|
||||
#: about.rst:22
|
||||
msgid ""
|
||||
|
@ -52,12 +53,11 @@ msgstr ""
|
|||
"et rédacteur de la plupart de son contenu ;"
|
||||
|
||||
#: about.rst:24
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"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éé "
|
||||
"le projet `Docutils <https://docutils.sourceforge.io/>`_ pour avoir créé "
|
||||
"*reStructuredText* et la suite d'outils *Docutils* ;"
|
||||
|
||||
#: about.rst:26
|
||||
|
|
5
bugs.po
5
bugs.po
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-02-12 11:56+0100\n"
|
||||
"POT-Creation-Date: 2023-04-14 13:19+0200\n"
|
||||
"PO-Revision-Date: 2022-12-11 17:39+0100\n"
|
||||
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -192,9 +192,10 @@ msgid "The submission form has two fields, \"Title\" and \"Comment\"."
|
|||
msgstr "Le formulaire de rapport contient deux champs, *Title* et *Comment*."
|
||||
|
||||
#: bugs.rst:72
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"For the \"Title\" field, enter a *very* short description of the problem; "
|
||||
"less than ten words is good."
|
||||
"fewer than ten words is good."
|
||||
msgstr ""
|
||||
"Dans le champ *Title*, entrez une *très* brève description du problème "
|
||||
"rencontré ; tâchez de vous limiter à dix mots."
|
||||
|
|
|
@ -6,7 +6,7 @@ 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: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"PO-Revision-Date: 2023-03-19 18:43+0100\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
"Language: fr\n"
|
||||
|
@ -24,63 +24,56 @@ msgid ""
|
|||
"correspond to the version code is **built** with, not necessarily the "
|
||||
"version used at **run time**."
|
||||
msgstr ""
|
||||
"CPython révèle son numéro de version dans les macros suivantes. À noter "
|
||||
"qu'ils correspondent au code de la version **compilée** avec, pas "
|
||||
"nécessairement la version utilisée à l'**exécution**."
|
||||
|
||||
#: c-api/apiabiversion.rst:13
|
||||
msgid ""
|
||||
"See :ref:`stable` for a discussion of API and ABI stability across versions."
|
||||
msgstr ""
|
||||
"Voir :ref:`stable` pour une discussion sur la stabilité des API et ABI entre "
|
||||
"(ou en fonction) de la version."
|
||||
|
||||
#: c-api/apiabiversion.rst:17
|
||||
#, fuzzy
|
||||
msgid "The ``3`` in ``3.4.1a2``."
|
||||
msgstr "``PY_MAJOR_VERSION`` (le ``3`` dans ``3.4.1a2``)"
|
||||
msgstr "Le ``3`` dans ``3.4.1a2``.)"
|
||||
|
||||
#: c-api/apiabiversion.rst:21
|
||||
#, fuzzy
|
||||
msgid "The ``4`` in ``3.4.1a2``."
|
||||
msgstr "``PY_MINOR_VERSION`` (le ``4`` dans ``3.4.1a2``)"
|
||||
msgstr "Le ``4`` dans ``3.4.1a2``."
|
||||
|
||||
#: c-api/apiabiversion.rst:25
|
||||
#, fuzzy
|
||||
msgid "The ``1`` in ``3.4.1a2``."
|
||||
msgstr "``PY_MICRO_VERSION`` (le ``1`` dans ``3.4.1a2``)"
|
||||
msgstr "Le ``1`` dans ``3.4.1a2``.)"
|
||||
|
||||
#: c-api/apiabiversion.rst:29
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"The ``a`` in ``3.4.1a2``. This can be ``0xA`` for alpha, ``0xB`` for beta, "
|
||||
"``0xC`` for release candidate or ``0xF`` for final."
|
||||
msgstr ""
|
||||
"``PY_RELEASE_LEVEL`` (``0xA`` pour alpha, ``0xB`` pour bêta, ``0xC`` pour "
|
||||
"une version candidate et ``0xF`` pour final), dans ce cas c'est alpha."
|
||||
" Le ``a`` dans ``3.4.1a2``. Cela peut être ``0xA`` pour alpha, ``0xB`` pour "
|
||||
"bêta, ``0xC`` pour une version candidate ou ``0xF`` pour finale)."
|
||||
|
||||
#: c-api/apiabiversion.rst:35
|
||||
#, fuzzy
|
||||
msgid "The ``2`` in ``3.4.1a2``. Zero for final releases."
|
||||
msgstr ""
|
||||
"``PY_RELEASE_SERIAL`` (le ``2`` au ``3.4.1a2``, zéro pour des versions "
|
||||
"finales)"
|
||||
msgstr "Le ``2`` dans ``3.4.1a2``. Nul pour des versions finales."
|
||||
|
||||
#: c-api/apiabiversion.rst:39
|
||||
#, fuzzy
|
||||
msgid "The Python version number encoded in a single integer."
|
||||
msgstr ""
|
||||
"``PY_VERSION_HEX`` est le numéro de version de Python encodé en un seul "
|
||||
"entier."
|
||||
msgstr "Le numéro de version de Python encodé en un seul entier."
|
||||
|
||||
#: c-api/apiabiversion.rst:41
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"The underlying version information can be found by treating it as a 32 bit "
|
||||
"number in the following manner:"
|
||||
msgstr ""
|
||||
"Par exemple si le ``PY_VERSION_HEX` est défini à ``0x030401a2``, la "
|
||||
"version d'information sous-jacente peut être trouvée en la traitant comme un "
|
||||
"nombre sous 32 bits de la manière suivante:"
|
||||
"L'information sur la version sous-jacente peut être trouvée en la traitant "
|
||||
"comme un nombre sous 32 bits de la manière suivante :"
|
||||
|
||||
#: c-api/apiabiversion.rst:45
|
||||
msgid "Bytes"
|
||||
msgstr "Bytes"
|
||||
msgstr "Octets"
|
||||
|
||||
#: c-api/apiabiversion.rst:45
|
||||
msgid "Bits (big endian order)"
|
||||
|
@ -92,103 +85,102 @@ msgstr "Signification"
|
|||
|
||||
#: c-api/apiabiversion.rst:45
|
||||
msgid "Value for ``3.4.1a2``"
|
||||
msgstr ""
|
||||
msgstr "Valeur pour ``3.4.1a2``"
|
||||
|
||||
#: c-api/apiabiversion.rst:47
|
||||
msgid "1"
|
||||
msgstr ""
|
||||
msgstr "1"
|
||||
|
||||
#: c-api/apiabiversion.rst:47
|
||||
#, fuzzy
|
||||
msgid "1-8"
|
||||
msgstr "``1-8``"
|
||||
msgstr "1-8"
|
||||
|
||||
#: c-api/apiabiversion.rst:47
|
||||
msgid "``PY_MAJOR_VERSION``"
|
||||
msgstr ""
|
||||
msgstr "``PY_MAJOR_VERSION``"
|
||||
|
||||
#: c-api/apiabiversion.rst:47
|
||||
msgid "``0x03``"
|
||||
msgstr ""
|
||||
msgstr "``0x03``"
|
||||
|
||||
#: c-api/apiabiversion.rst:49
|
||||
msgid "2"
|
||||
msgstr ""
|
||||
msgstr "2"
|
||||
|
||||
#: c-api/apiabiversion.rst:49
|
||||
#, fuzzy
|
||||
msgid "9-16"
|
||||
msgstr "``9-16``"
|
||||
msgstr "9-16"
|
||||
|
||||
#: c-api/apiabiversion.rst:49
|
||||
msgid "``PY_MINOR_VERSION``"
|
||||
msgstr ""
|
||||
msgstr "``PY_MINOR_VERSION``"
|
||||
|
||||
#: c-api/apiabiversion.rst:49
|
||||
msgid "``0x04``"
|
||||
msgstr ""
|
||||
msgstr "``0x04``"
|
||||
|
||||
#: c-api/apiabiversion.rst:51
|
||||
msgid "3"
|
||||
msgstr ""
|
||||
msgstr "3"
|
||||
|
||||
#: c-api/apiabiversion.rst:51
|
||||
#, fuzzy
|
||||
msgid "17-24"
|
||||
msgstr "``17-24``"
|
||||
msgstr "17-24"
|
||||
|
||||
#: c-api/apiabiversion.rst:51
|
||||
msgid "``PY_MICRO_VERSION``"
|
||||
msgstr ""
|
||||
msgstr "``PY_MICRO_VERSION``"
|
||||
|
||||
#: c-api/apiabiversion.rst:51
|
||||
msgid "``0x01``"
|
||||
msgstr ""
|
||||
msgstr "``0x01``"
|
||||
|
||||
#: c-api/apiabiversion.rst:53
|
||||
msgid "4"
|
||||
msgstr ""
|
||||
msgstr "4"
|
||||
|
||||
#: c-api/apiabiversion.rst:53
|
||||
#, fuzzy
|
||||
msgid "25-28"
|
||||
msgstr "``25-28``"
|
||||
msgstr "25-28"
|
||||
|
||||
#: c-api/apiabiversion.rst:53
|
||||
msgid "``PY_RELEASE_LEVEL``"
|
||||
msgstr ""
|
||||
msgstr "``PY_RELEASE_LEVEL``"
|
||||
|
||||
#: c-api/apiabiversion.rst:53
|
||||
msgid "``0xA``"
|
||||
msgstr ""
|
||||
msgstr "``0xA``"
|
||||
|
||||
#: c-api/apiabiversion.rst:55
|
||||
#, fuzzy
|
||||
msgid "29-32"
|
||||
msgstr "``29-32``"
|
||||
msgstr "29-32"
|
||||
|
||||
#: c-api/apiabiversion.rst:55
|
||||
msgid "``PY_RELEASE_SERIAL``"
|
||||
msgstr ""
|
||||
msgstr "``PY_RELEASE_SERIAL``"
|
||||
|
||||
#: c-api/apiabiversion.rst:55
|
||||
msgid "``0x2``"
|
||||
msgstr ""
|
||||
msgstr "``0x2``"
|
||||
|
||||
#: c-api/apiabiversion.rst:58
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Thus ``3.4.1a2`` is hexversion ``0x030401a2`` and ``3.10.0`` is hexversion "
|
||||
"``0x030a00f0``."
|
||||
msgstr "Ainsi ``3.4.1a2`` est une hexane-version ``0x030401a2``."
|
||||
msgstr ""
|
||||
"Ainsi, ``0x030401a2`` est la version en notation hexadécimale sur un entier "
|
||||
"de ``3.4.1a2`` et ``0x030a00f0`` est la version en notation hexadécimale sur "
|
||||
"un entier de ``3.10.0``"
|
||||
|
||||
#: c-api/apiabiversion.rst:61
|
||||
msgid "Use this for numeric comparisons, e.g. ``#if PY_VERSION_HEX >= ...``."
|
||||
msgstr ""
|
||||
"Vous pouvez l'utiliser pour les comparaisons numériques, par exemple, ``#if "
|
||||
"PY_VERSION_HEX >= ...``."
|
||||
|
||||
#: c-api/apiabiversion.rst:63
|
||||
msgid "This version is also available via the symbol :data:`Py_Version`."
|
||||
msgstr ""
|
||||
msgstr "Cette version est aussi disponible via le symbole :data:`Py_Version`."
|
||||
|
||||
#: c-api/apiabiversion.rst:67
|
||||
msgid ""
|
||||
|
@ -196,6 +188,9 @@ msgid ""
|
|||
"the same format as the :c:macro:`PY_VERSION_HEX` macro. This contains the "
|
||||
"Python version used at run time."
|
||||
msgstr ""
|
||||
"La version à l'exécution de Python est encodée en une constante, avec le "
|
||||
"même format que la macro :c:macro:`PY_VERSION_HEX`. Cela contient la version "
|
||||
"de Python utilisée lors de l'exécution."
|
||||
|
||||
#: c-api/apiabiversion.rst:73
|
||||
msgid "All the given macros are defined in :source:`Include/patchlevel.h`."
|
||||
|
|
|
@ -537,7 +537,7 @@ msgstr ""
|
|||
|
||||
#: c-api/arg.rst:245
|
||||
msgid "There are two modes of operation:"
|
||||
msgstr "Il existe deux modes de fonctionnement :"
|
||||
msgstr "Il existe deux modes de fonctionnement :"
|
||||
|
||||
#: c-api/arg.rst:247
|
||||
msgid ""
|
||||
|
@ -877,7 +877,7 @@ msgid ""
|
|||
"occur inside nested parentheses. They are:"
|
||||
msgstr ""
|
||||
"Quelques autres caractères ont un sens dans une chaîne de format. On ne doit "
|
||||
"pas les trouvées dans des parenthèses imbriquées. Ce sont :"
|
||||
"pas les trouvées dans des parenthèses imbriquées. Ce sont :"
|
||||
|
||||
#: c-api/arg.rst:396
|
||||
msgid "``|``"
|
||||
|
|
|
@ -52,7 +52,7 @@ msgid ""
|
|||
"`buffer protocol <bufferobjects>`. This protocol has two sides:"
|
||||
msgstr ""
|
||||
"Python fournit une telle facilité au niveau du C sous la forme de :ref:"
|
||||
"`protocole tampon <bufferobjects>`. Ce protocole comporte deux aspects :"
|
||||
"`protocole tampon <bufferobjects>`. Ce protocole comporte deux aspects :"
|
||||
|
||||
#: c-api/buffer.rst:34
|
||||
msgid ""
|
||||
|
|
|
@ -234,7 +234,7 @@ msgstr ""
|
|||
"Macros pour extraire les champs des objets *date*. L'argument doit être une "
|
||||
"instance de :c:data:`PyDateTime_Date`, ou une sous-classe (telle que :c:data:"
|
||||
"`PyDateTime_DateTime`). L'argument ne doit pas être *NULL*, et le type n'est "
|
||||
"pas vérifié :"
|
||||
"pas vérifié :"
|
||||
|
||||
#: c-api/datetime.rst:159
|
||||
msgid "Return the year, as a positive int."
|
||||
|
@ -257,7 +257,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Macros pour extraire les champs des objets *datetime*. L'argument doit être "
|
||||
"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é :"
|
||||
"ci. L'argument ne doit pas être *NULL*, et le type n'est pas vérifié :"
|
||||
|
||||
#: c-api/datetime.rst:216
|
||||
msgid "Return the hour, as an int from 0 through 23."
|
||||
|
@ -293,7 +293,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Macros pour extraire les champs des objets *time*. L'argument doit être une "
|
||||
"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é :"
|
||||
"L'argument ne doit pas être *NULL*, et le type n'est pas vérifié :"
|
||||
|
||||
#: c-api/datetime.rst:248
|
||||
#, fuzzy
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2023-04-14 13:19+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"
|
||||
|
@ -91,9 +91,10 @@ msgstr ""
|
|||
|
||||
#: c-api/dict.rst:83
|
||||
msgid ""
|
||||
"Remove the entry in dictionary *p* with key *key*. *key* must be hashable; "
|
||||
"if it isn't, :exc:`TypeError` is raised. If *key* is not in the dictionary, :"
|
||||
"exc:`KeyError` is raised. Return ``0`` on success or ``-1`` on failure."
|
||||
"Remove the entry in dictionary *p* with key *key*. *key* must be :term:"
|
||||
"`hashable`; if it isn't, :exc:`TypeError` is raised. If *key* is not in the "
|
||||
"dictionary, :exc:`KeyError` is raised. Return ``0`` on success or ``-1`` on "
|
||||
"failure."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/dict.rst:91
|
||||
|
|
|
@ -6,7 +6,7 @@ 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: 2022-05-23 00:48+0200\n"
|
||||
"PO-Revision-Date: 2023-03-19 18:46+0100\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
"Language: fr\n"
|
||||
|
@ -16,81 +16,95 @@ msgstr ""
|
|||
|
||||
#: c-api/frame.rst:4
|
||||
msgid "Frame Objects"
|
||||
msgstr ""
|
||||
msgstr "Objets décrivant les *frames*"
|
||||
|
||||
#: c-api/frame.rst:8
|
||||
msgid "The C structure of the objects used to describe frame objects."
|
||||
msgstr ""
|
||||
msgstr "Structure des objets C utilisée pour décrire les objets *frame*."
|
||||
|
||||
#: c-api/frame.rst:10
|
||||
msgid "There are no public members in this structure."
|
||||
msgstr ""
|
||||
msgstr "Il n'y a pas de membres publics dans cette structure."
|
||||
|
||||
#: c-api/frame.rst:12
|
||||
msgid ""
|
||||
"The members of this structure were removed from the public C API. Refer to "
|
||||
"the :ref:`What's New entry <pyframeobject-3.11-hiding>` for details."
|
||||
msgstr ""
|
||||
"Les membres de la structure API publique ont été retirés de l'API publique "
|
||||
"de C. Visiter :ref:`l'entrée dans la page des nouveautés de Python "
|
||||
"<pyframeobject-3.11-hiding>` pour plus détails."
|
||||
|
||||
#: c-api/frame.rst:17
|
||||
msgid ""
|
||||
"The :c:func:`PyEval_GetFrame` and :c:func:`PyThreadState_GetFrame` functions "
|
||||
"can be used to get a frame object."
|
||||
msgstr ""
|
||||
"Les fonctions :func:`PyEval_GetFrame` et :c:func:`PyThreadState_GetFrame` "
|
||||
"peuvent être utilisées pour avoir un objet de *frame*."
|
||||
|
||||
#: c-api/frame.rst:20
|
||||
msgid "See also :ref:`Reflection <reflection>`."
|
||||
msgstr ""
|
||||
msgstr "Voir aussi :ref:`reflection`"
|
||||
|
||||
#: c-api/frame.rst:24
|
||||
msgid ""
|
||||
"The type of frame objects. It is the same object as :py:class:`types."
|
||||
"FrameType` in the Python layer."
|
||||
msgstr ""
|
||||
"Le type des objets de *frame*. C'est le même objet que :py:class:`types."
|
||||
"FrameType` dans la couche de Python."
|
||||
|
||||
#: c-api/frame.rst:29
|
||||
msgid ""
|
||||
"Previously, this type was only available after including ``<frameobject.h>``."
|
||||
msgstr ""
|
||||
"Précédemment, ce type était disponible uniquement après l'inclusion de "
|
||||
"``<frameobject.h>``."
|
||||
|
||||
#: c-api/frame.rst:34
|
||||
msgid "Return non-zero if *obj* is a frame object."
|
||||
msgstr ""
|
||||
msgstr "Renvoie un entier non nul si *obj* est un objet *frame*."
|
||||
|
||||
#: c-api/frame.rst:38
|
||||
msgid ""
|
||||
"Previously, this function was only available after including ``<frameobject."
|
||||
"h>``."
|
||||
msgstr ""
|
||||
"Précédemment, ce type était disponible uniquement après l'inclusion de "
|
||||
"``<frameobject.h>``."
|
||||
|
||||
#: c-api/frame.rst:43
|
||||
msgid "Get the *frame* next outer frame."
|
||||
msgstr ""
|
||||
msgstr "Renvoie la *frame* encadrant immédiatement à *frame*."
|
||||
|
||||
#: c-api/frame.rst:45
|
||||
msgid ""
|
||||
"Return a :term:`strong reference`, or ``NULL`` if *frame* has no outer frame."
|
||||
msgstr ""
|
||||
"Renvoie un :term:`strong reference`, ou ``NULL`` si *frame* n'a pas de "
|
||||
"*frame* encadrante."
|
||||
|
||||
#: c-api/frame.rst:53
|
||||
msgid "Get the *frame*'s ``f_builtins`` attribute."
|
||||
msgstr ""
|
||||
msgstr "Obtenir l'attribut ``f_buitins`` de *frame*."
|
||||
|
||||
#: c-api/frame.rst:86
|
||||
msgid "Return a :term:`strong reference`. The result cannot be ``NULL``."
|
||||
msgstr ""
|
||||
"Renvoie un :term:`strong reference`. Le résultat ne peut être ``NULL``."
|
||||
|
||||
#: c-api/frame.rst:62
|
||||
msgid "Get the *frame* code."
|
||||
msgstr ""
|
||||
msgstr "Obtenir le code *frame*."
|
||||
|
||||
#: c-api/frame.rst:104
|
||||
msgid "Return a :term:`strong reference`."
|
||||
msgstr ""
|
||||
msgstr "Renvoie un :term:`strong reference`."
|
||||
|
||||
#: c-api/frame.rst:66
|
||||
msgid "The result (frame code) cannot be ``NULL``."
|
||||
msgstr ""
|
||||
msgstr "Le résultat (code *frame*) ne peut être ``NULL``."
|
||||
|
||||
#: c-api/frame.rst:73
|
||||
msgid ""
|
||||
|
@ -98,27 +112,31 @@ msgid ""
|
|||
"``NULL`` if this frame is not owned by a generator. Does not raise an "
|
||||
"exception, even if the return value is ``NULL``."
|
||||
msgstr ""
|
||||
"Obtenir le générateur, coroutine, ou un générateur asynchrone qui maintient "
|
||||
"cette *frame*, ou ``NULL`` si cette *frame* n'est pas maintenu par un "
|
||||
"générateur. Il ne lève pas d'exception, même si la valeur renvoyée est "
|
||||
"``NULL``."
|
||||
|
||||
#: c-api/frame.rst:77
|
||||
msgid "Return a :term:`strong reference`, or ``NULL``."
|
||||
msgstr ""
|
||||
msgstr "Renvoie un :term:`strong reference`, ou ``NULL``."
|
||||
|
||||
#: c-api/frame.rst:84
|
||||
msgid "Get the *frame*'s ``f_globals`` attribute."
|
||||
msgstr ""
|
||||
msgstr "Obtenir l'attribut ``f_globals`` de *frame*."
|
||||
|
||||
#: c-api/frame.rst:93
|
||||
msgid "Get the *frame*'s ``f_lasti`` attribute."
|
||||
msgstr ""
|
||||
msgstr "Obtenir l'attribut ``f_lasti`` de *frame*."
|
||||
|
||||
#: c-api/frame.rst:95
|
||||
msgid "Returns -1 if ``frame.f_lasti`` is ``None``."
|
||||
msgstr ""
|
||||
msgstr "Renvoie -1 si ``frame.f_lasti`` est ``None``."
|
||||
|
||||
#: c-api/frame.rst:102
|
||||
msgid "Get the *frame*'s ``f_locals`` attribute (:class:`dict`)."
|
||||
msgstr ""
|
||||
msgstr "Obtenir l'attribut (:class:`dict`) ``f_locals`` de *frame*."
|
||||
|
||||
#: c-api/frame.rst:111
|
||||
msgid "Return the line number that *frame* is currently executing."
|
||||
msgstr ""
|
||||
msgstr "Renvoie le numéro de ligne que cette *frame* est en train d'exécuter."
|
||||
|
|
|
@ -6,7 +6,7 @@ msgstr ""
|
|||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-03-23 18:39+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"PO-Revision-Date: 2023-02-20 13:11+0100\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
"Language: fr\n"
|
||||
|
@ -16,15 +16,15 @@ msgstr ""
|
|||
|
||||
#: c-api/function.rst:6
|
||||
msgid "Function Objects"
|
||||
msgstr "Objets fonctions"
|
||||
msgstr "Objets fonction"
|
||||
|
||||
#: c-api/function.rst:10
|
||||
msgid "There are a few functions specific to Python functions."
|
||||
msgstr ""
|
||||
msgstr "Certaines fonctions sont spécifiques aux fonctions Python."
|
||||
|
||||
#: c-api/function.rst:15
|
||||
msgid "The C structure used for functions."
|
||||
msgstr ""
|
||||
msgstr "La structure C utilisée pour les fonctions."
|
||||
|
||||
#: c-api/function.rst:22
|
||||
msgid ""
|
||||
|
@ -32,6 +32,8 @@ msgid ""
|
|||
"function type. It is exposed to Python programmers as ``types."
|
||||
"FunctionType``."
|
||||
msgstr ""
|
||||
"C'est une instance de :c:type:`PyTypeObject` et représente le type fonction "
|
||||
"en Python. Il est exposé aux développeurs comme ``types.FunctionType``."
|
||||
|
||||
#: c-api/function.rst:28
|
||||
msgid ""
|
||||
|
@ -39,6 +41,9 @@ msgid ""
|
|||
"`PyFunction_Type`). The parameter must not be ``NULL``. This function "
|
||||
"always succeeds."
|
||||
msgstr ""
|
||||
"Renvoie vrai si *o* est un objet de type fonction (a comme type :c:data:"
|
||||
"`PyFunction_Type`). Le paramètre ne doit pas être ``NULL``. Cette fonction "
|
||||
"réussit toujours."
|
||||
|
||||
#: c-api/function.rst:34
|
||||
msgid ""
|
||||
|
@ -46,6 +51,8 @@ msgid ""
|
|||
"*globals* must be a dictionary with the global variables accessible to the "
|
||||
"function."
|
||||
msgstr ""
|
||||
"Renvoie une nouvelle fonction associée avec l'objet *code*. *globals* doit "
|
||||
"être un dictionnaire avec les variables globales accessibles à la fonction."
|
||||
|
||||
#: c-api/function.rst:37
|
||||
msgid ""
|
||||
|
@ -54,6 +61,10 @@ msgid ""
|
|||
"and closure are set to ``NULL``. *__qualname__* is set to the same value as "
|
||||
"the code object's ``co_qualname`` field."
|
||||
msgstr ""
|
||||
"La *docstring* et le nom de la fonction sont récupérés à partir de l'objet "
|
||||
"code. *__module__* est récupéré à partir de *globals*. Les arguments par "
|
||||
"défaut, les annotations et la fermeture sont mis à ``NULL``. *__qualname__* "
|
||||
"est mis à la même valeur que celle du champ ``co_qualname`` de l'objet code."
|
||||
|
||||
#: c-api/function.rst:45
|
||||
msgid ""
|
||||
|
@ -62,63 +73,85 @@ msgid ""
|
|||
"``NULL``; if ``NULL``, the ``__qualname__`` attribute is set to the same "
|
||||
"value as the code object's ``co_qualname`` field."
|
||||
msgstr ""
|
||||
"Comme :c:func:`PyFunction_New`, mais accepte aussi une valeur à utiliser "
|
||||
"pour l'attribut ``__qualname__`` de l'objet fonction. *qualname* doit être "
|
||||
"un objet Unicode ou ``NULL``; s'il est ``NULL``, l'attribut ``__qualname__`` "
|
||||
"de l'objet fonction prend la valeur de l'attribut ``co_qualname`` de l'objet "
|
||||
"code."
|
||||
|
||||
#: c-api/function.rst:55
|
||||
msgid "Return the code object associated with the function object *op*."
|
||||
msgstr ""
|
||||
msgstr "Renvoie l'objet code associé avec l'objet de la fonction *op*."
|
||||
|
||||
#: c-api/function.rst:60
|
||||
msgid "Return the globals dictionary associated with the function object *op*."
|
||||
msgstr ""
|
||||
"Renvoie le dictionnaire global associé avec l'objet de la fonction *op*."
|
||||
|
||||
#: c-api/function.rst:65
|
||||
msgid ""
|
||||
"Return a :term:`borrowed reference` to the *__module__* attribute of the "
|
||||
"function object *op*. It can be *NULL*."
|
||||
msgstr ""
|
||||
"Renvoie un :term:`borrowed reference` à l'attribut ``__module__`` de l'objet "
|
||||
"fonction *op*. Il peut être *NULL*."
|
||||
|
||||
#: c-api/function.rst:68
|
||||
msgid ""
|
||||
"This is normally a string containing the module name, but can be set to any "
|
||||
"other object by Python code."
|
||||
msgstr ""
|
||||
"C'est typiquement une chaîne de caractère contenant le nom du module, mais "
|
||||
"il peut être changé par du code Python pour n'importe quel autre objet."
|
||||
|
||||
#: c-api/function.rst:74
|
||||
msgid ""
|
||||
"Return the argument default values of the function object *op*. This can be "
|
||||
"a tuple of arguments or ``NULL``."
|
||||
msgstr ""
|
||||
"Renvoie les valeurs par défaut de l'argument de l'objet de la fonction *op*. "
|
||||
"Cela peut être un tuple d'arguments ou ``NULL``."
|
||||
|
||||
#: c-api/function.rst:80
|
||||
msgid ""
|
||||
"Set the argument default values for the function object *op*. *defaults* "
|
||||
"must be ``Py_None`` or a tuple."
|
||||
msgstr ""
|
||||
"Définir les valeurs par défaut de l'argument pour l'objet de la fonction "
|
||||
"*op*. *defaults* doit être ``Py_None`` ou un tuple."
|
||||
|
||||
#: c-api/function.rst:97 c-api/function.rst:111
|
||||
msgid "Raises :exc:`SystemError` and returns ``-1`` on failure."
|
||||
msgstr ""
|
||||
msgstr "Lève :exc:`SystemError` et renvoie ``-1`` en cas de d'échec."
|
||||
|
||||
#: c-api/function.rst:88
|
||||
msgid ""
|
||||
"Return the closure associated with the function object *op*. This can be "
|
||||
"``NULL`` or a tuple of cell objects."
|
||||
msgstr ""
|
||||
"Renvoie la fermeture associée avec l'objet de la fonction *op*. Cela peut "
|
||||
"être ``NULL`` ou un tuple d'objets cellule."
|
||||
|
||||
#: c-api/function.rst:94
|
||||
msgid ""
|
||||
"Set the closure associated with the function object *op*. *closure* must be "
|
||||
"``Py_None`` or a tuple of cell objects."
|
||||
msgstr ""
|
||||
"Définir la fermeture associée avec l'objet de la fonction *op*. *closure* "
|
||||
"doit être ``Py_None`` ou un tuple d'objets cellule."
|
||||
|
||||
#: c-api/function.rst:102
|
||||
msgid ""
|
||||
"Return the annotations of the function object *op*. This can be a mutable "
|
||||
"dictionary or ``NULL``."
|
||||
msgstr ""
|
||||
"Renvoie les annotations de l'objet de la fonction *op*. Cela peut être un "
|
||||
"dictionnaire mutable ou ``NULL``."
|
||||
|
||||
#: c-api/function.rst:108
|
||||
msgid ""
|
||||
"Set the annotations for the function object *op*. *annotations* must be a "
|
||||
"dictionary or ``Py_None``."
|
||||
msgstr ""
|
||||
"Définir les annotations pour l'objet de la fonction *op*. *annotations* doit "
|
||||
"être un dictionnaire ou ``Py_None``."
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2023-04-14 13:19+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"
|
||||
|
@ -134,7 +134,7 @@ msgstr ""
|
|||
#: c-api/init.rst:51
|
||||
#, fuzzy
|
||||
msgid "Utilities:"
|
||||
msgstr "Utilitaires"
|
||||
msgstr "Utilitaires :"
|
||||
|
||||
#: c-api/init.rst:53
|
||||
msgid ":c:func:`Py_DecodeLocale`"
|
||||
|
@ -473,7 +473,7 @@ msgid ""
|
|||
"than once."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/init.rst:305
|
||||
#: c-api/init.rst:29
|
||||
msgid ""
|
||||
"Raises an :ref:`auditing event <auditing>` ``cpython."
|
||||
"_PySys_ClearAuditHooks`` with no arguments."
|
||||
|
@ -585,10 +585,10 @@ msgid ""
|
|||
"example, if the program name is ``'/usr/local/bin/python'``, the prefix is "
|
||||
"``'/usr/local'``. The returned string points into static storage; the caller "
|
||||
"should not modify its value. This corresponds to the :makevar:`prefix` "
|
||||
"variable in the top-level :file:`Makefile` and the ``--prefix`` argument to "
|
||||
"the :program:`configure` script at build time. The value is available to "
|
||||
"Python code as ``sys.prefix``. It is only useful on Unix. See also the next "
|
||||
"function."
|
||||
"variable in the top-level :file:`Makefile` and the :option:`--prefix` "
|
||||
"argument to the :program:`configure` script at build time. The value is "
|
||||
"available to Python code as ``sys.prefix``. It is only useful on Unix. See "
|
||||
"also the next function."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/init.rst:420
|
||||
|
@ -1266,7 +1266,7 @@ msgid ""
|
|||
"function."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/init.rst:1109
|
||||
#: c-api/init.rst:5
|
||||
msgid ""
|
||||
"Raises an :ref:`auditing event <auditing>` ``cpython."
|
||||
"PyInterpreterState_New`` with no arguments."
|
||||
|
@ -1278,7 +1278,7 @@ msgid ""
|
|||
"interpreter lock must be held."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/init.rst:1117
|
||||
#: c-api/init.rst:4
|
||||
msgid ""
|
||||
"Raises an :ref:`auditing event <auditing>` ``cpython."
|
||||
"PyInterpreterState_Clear`` with no arguments."
|
||||
|
|
|
@ -86,7 +86,7 @@ msgstr ""
|
|||
#: c-api/init_config.rst:85
|
||||
#, fuzzy
|
||||
msgid "Methods:"
|
||||
msgstr "Méthodes"
|
||||
msgstr "Méthodes :"
|
||||
|
||||
#: c-api/init_config.rst:89
|
||||
msgid "Append *item* to *list*."
|
||||
|
@ -2040,7 +2040,7 @@ msgstr ""
|
|||
|
||||
#, fuzzy
|
||||
#~ msgid "Functions:"
|
||||
#~ msgstr "Fonctions"
|
||||
#~ msgstr "Fonctions :"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "Interactive mode."
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2023-04-14 13:19+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,11 +120,11 @@ msgstr ""
|
|||
msgid ""
|
||||
"The header files are typically installed with Python. On Unix, these are "
|
||||
"located in the directories :file:`{prefix}/include/pythonversion/` and :file:"
|
||||
"`{exec_prefix}/include/pythonversion/`, where :envvar:`prefix` and :envvar:"
|
||||
"`exec_prefix` are defined by the corresponding parameters to Python's :"
|
||||
"program:`configure` script and *version* is ``'%d.%d' % sys."
|
||||
"version_info[:2]``. On Windows, the headers are installed in :file:"
|
||||
"`{prefix}/include`, where :envvar:`prefix` is the installation directory "
|
||||
"`{exec_prefix}/include/pythonversion/`, where :option:`prefix <--prefix>` "
|
||||
"and :option:`exec_prefix <--exec-prefix>` are defined by the corresponding "
|
||||
"parameters to Python's :program:`configure` script and *version* is ``'%d."
|
||||
"%d' % sys.version_info[:2]``. On Windows, the headers are installed in :"
|
||||
"file:`{prefix}/include`, where ``prefix`` is the installation directory "
|
||||
"specified to the installer."
|
||||
msgstr ""
|
||||
|
||||
|
@ -134,8 +134,8 @@ msgid ""
|
|||
"compiler's search path for includes. Do *not* place the parent directories "
|
||||
"on the search path and then use ``#include <pythonX.Y/Python.h>``; this will "
|
||||
"break on multi-platform builds since the platform independent headers under :"
|
||||
"envvar:`prefix` include the platform specific headers from :envvar:"
|
||||
"`exec_prefix`."
|
||||
"option:`prefix <--prefix>` include the platform specific headers from :"
|
||||
"option:`exec_prefix <--exec-prefix>`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/intro.rst:95
|
||||
|
|
|
@ -609,7 +609,7 @@ msgstr ""
|
|||
#: c-api/memory.rst:445 c-api/memory.rst:454
|
||||
#, fuzzy
|
||||
msgid "Functions:"
|
||||
msgstr "Fonctions"
|
||||
msgstr "Fonctions :"
|
||||
|
||||
#: c-api/memory.rst:438
|
||||
#, fuzzy
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2023-04-14 13:19+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"
|
||||
|
@ -437,17 +437,17 @@ msgstr ""
|
|||
|
||||
#: c-api/module.rst:391
|
||||
msgid ""
|
||||
"Create a new module object, given the definition in *module* and the "
|
||||
"ModuleSpec *spec*. This behaves like :c:func:`PyModule_FromDefAndSpec2` "
|
||||
"with *module_api_version* set to :const:`PYTHON_API_VERSION`."
|
||||
"Create a new module object, given the definition in *def* and the ModuleSpec "
|
||||
"*spec*. This behaves like :c:func:`PyModule_FromDefAndSpec2` with "
|
||||
"*module_api_version* set to :const:`PYTHON_API_VERSION`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/module.rst:399
|
||||
msgid ""
|
||||
"Create a new module object, given the definition in *module* and the "
|
||||
"ModuleSpec *spec*, assuming the API version *module_api_version*. If that "
|
||||
"version does not match the version of the running interpreter, a :exc:"
|
||||
"`RuntimeWarning` is emitted."
|
||||
"Create a new module object, given the definition in *def* and the ModuleSpec "
|
||||
"*spec*, assuming the API version *module_api_version*. If that version does "
|
||||
"not match the version of the running interpreter, a :exc:`RuntimeWarning` is "
|
||||
"emitted."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/module.rst:406
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2023-04-14 13:19+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"
|
||||
|
@ -264,7 +264,21 @@ msgstr ""
|
|||
"Si *o1* et *o2* sont le même objet, :c:func:`PyObject_RichCompareBool` "
|
||||
"renvoie toujours ``1`` pour :const:`Py_EQ` et ``0`` pour :const:`Py_NE`."
|
||||
|
||||
#: c-api/object.rst:186
|
||||
#: c-api/object.rst:184
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Format *obj* using *format_spec*. This is equivalent to the Python "
|
||||
"expression ``format(obj, format_spec)``."
|
||||
msgstr "Ceci est l'équivalent de l'expression Python : ``callable(*args)``."
|
||||
|
||||
#: c-api/object.rst:187
|
||||
msgid ""
|
||||
"*format_spec* may be ``NULL``. In this case the call is equivalent to "
|
||||
"``format(obj)``. Returns the formatted string on success, ``NULL`` on "
|
||||
"failure."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/object.rst:195
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Compute a string representation of object *o*. Returns the string "
|
||||
|
@ -277,7 +291,7 @@ msgstr ""
|
|||
"d'échec. Ceci est l'équivalent de l'expression Python ``repr(o)``. Appelé "
|
||||
"par la fonction native :func:`repr`."
|
||||
|
||||
#: c-api/object.rst:214
|
||||
#: c-api/object.rst:223
|
||||
msgid ""
|
||||
"This function now includes a debug assertion to help ensure that it does not "
|
||||
"silently discard an active exception."
|
||||
|
@ -285,7 +299,7 @@ msgstr ""
|
|||
"Cette fonction inclut maintenant une assertion de débogage afin d'assurer "
|
||||
"qu'elle ne passe pas sous silence une exception active."
|
||||
|
||||
#: c-api/object.rst:198
|
||||
#: c-api/object.rst:207
|
||||
msgid ""
|
||||
"As :c:func:`PyObject_Repr`, compute a string representation of object *o*, "
|
||||
"but escape the non-ASCII characters in the string returned by :c:func:"
|
||||
|
@ -300,7 +314,7 @@ msgstr ""
|
|||
"renvoyée par :c:func:`PyObject_Repr` en Python 2. Appelée par la fonction "
|
||||
"native :func:`ascii`."
|
||||
|
||||
#: c-api/object.rst:209
|
||||
#: c-api/object.rst:218
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Compute a string representation of object *o*. Returns the string "
|
||||
|
@ -314,7 +328,7 @@ msgstr ""
|
|||
"par la fonction native :func:`str`, et, par conséquent, par la fonction :"
|
||||
"func:`print`."
|
||||
|
||||
#: c-api/object.rst:223
|
||||
#: c-api/object.rst:232
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Compute a bytes representation of object *o*. ``NULL`` is returned on "
|
||||
|
@ -329,7 +343,7 @@ msgstr ""
|
|||
"entier. Contrairement à ``bytes(o)``, une exception *TypeError* est levée "
|
||||
"lorsque *o* est un entier au lieu d'un objet octet initialisé avec des zéros."
|
||||
|
||||
#: c-api/object.rst:232
|
||||
#: c-api/object.rst:241
|
||||
msgid ""
|
||||
"Return ``1`` if the class *derived* is identical to or derived from the "
|
||||
"class *cls*, otherwise return ``0``. In case of an error, return ``-1``."
|
||||
|
@ -337,7 +351,7 @@ msgstr ""
|
|||
"Renvoie ``1`` si la classe *derived* est identique à ou dérivée de la classe "
|
||||
"*cls*, renvoie ``0`` sinon. En cas d'erreur, renvoie ``-1``."
|
||||
|
||||
#: c-api/object.rst:254
|
||||
#: c-api/object.rst:263
|
||||
msgid ""
|
||||
"If *cls* is a tuple, the check will be done against every entry in *cls*. "
|
||||
"The result will be ``1`` when at least one of the checks returns ``1``, "
|
||||
|
@ -347,7 +361,7 @@ msgstr ""
|
|||
"*cls*. Le résultat sera ``1`` quand au moins une des vérifications renvoie "
|
||||
"``1``, sinon ce sera ``0``."
|
||||
|
||||
#: c-api/object.rst:239
|
||||
#: c-api/object.rst:248
|
||||
msgid ""
|
||||
"If *cls* has a :meth:`~class.__subclasscheck__` method, it will be called to "
|
||||
"determine the subclass status as described in :pep:`3119`. Otherwise, "
|
||||
|
@ -359,7 +373,7 @@ msgstr ""
|
|||
"Sinon, *derived* est une sous-classe de *cls* si c'est une sous-classe "
|
||||
"directe ou indirecte, c'est-à-dire contenue dans ``cls.__mro__``."
|
||||
|
||||
#: c-api/object.rst:244
|
||||
#: c-api/object.rst:253
|
||||
msgid ""
|
||||
"Normally only class objects, i.e. instances of :class:`type` or a derived "
|
||||
"class, are considered classes. However, objects can override this by having "
|
||||
|
@ -370,7 +384,7 @@ msgstr ""
|
|||
"les objets peuvent surcharger cela en ayant un attribut :attr:`__bases__` "
|
||||
"(qui doit être un *n*-uplet de classes de bases)."
|
||||
|
||||
#: c-api/object.rst:251
|
||||
#: c-api/object.rst:260
|
||||
msgid ""
|
||||
"Return ``1`` if *inst* is an instance of the class *cls* or a subclass of "
|
||||
"*cls*, or ``0`` if not. On error, returns ``-1`` and sets an exception."
|
||||
|
@ -379,7 +393,7 @@ msgstr ""
|
|||
"classe de *cls*, ou ``0`` sinon. En cas d'erreur, renvoie ``-1`` et "
|
||||
"initialise une exception."
|
||||
|
||||
#: c-api/object.rst:258
|
||||
#: c-api/object.rst:267
|
||||
msgid ""
|
||||
"If *cls* has a :meth:`~class.__instancecheck__` method, it will be called to "
|
||||
"determine the subclass status as described in :pep:`3119`. Otherwise, "
|
||||
|
@ -390,7 +404,7 @@ msgstr ""
|
|||
"Sinon, *inst* est une instance *cls* si sa classe est une sous-classe de "
|
||||
"*cls*."
|
||||
|
||||
#: c-api/object.rst:262
|
||||
#: c-api/object.rst:271
|
||||
msgid ""
|
||||
"An instance *inst* can override what is considered its class by having a :"
|
||||
"attr:`__class__` attribute."
|
||||
|
@ -398,7 +412,7 @@ msgstr ""
|
|||
"Une instance *inst* peut surcharger ce qui est considéré comme sa classe en "
|
||||
"ayant un attribut :attr:`__class__`."
|
||||
|
||||
#: c-api/object.rst:265
|
||||
#: c-api/object.rst:274
|
||||
msgid ""
|
||||
"An object *cls* can override if it is considered a class, and what its base "
|
||||
"classes are, by having a :attr:`__bases__` attribute (which must be a tuple "
|
||||
|
@ -408,41 +422,41 @@ msgstr ""
|
|||
"que ses classes de bases sont, en ayant un attribut :attr:`__bases__` (qui "
|
||||
"doit être un *n*-uplet des classes de base)."
|
||||
|
||||
#: c-api/object.rst:274
|
||||
#: c-api/object.rst:283
|
||||
msgid ""
|
||||
"Compute and return the hash value of an object *o*. On failure, return "
|
||||
"``-1``. This is the equivalent of the Python expression ``hash(o)``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/object.rst:277
|
||||
#: c-api/object.rst:286
|
||||
msgid ""
|
||||
"The return type is now Py_hash_t. This is a signed integer the same size "
|
||||
"as :c:type:`Py_ssize_t`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/object.rst:284
|
||||
#: c-api/object.rst:293
|
||||
msgid ""
|
||||
"Set a :exc:`TypeError` indicating that ``type(o)`` is not hashable and "
|
||||
"return ``-1``. This function receives special treatment when stored in a "
|
||||
"Set a :exc:`TypeError` indicating that ``type(o)`` is not :term:`hashable` "
|
||||
"and return ``-1``. This function receives special treatment when stored in a "
|
||||
"``tp_hash`` slot, allowing a type to explicitly indicate to the interpreter "
|
||||
"that it is not hashable."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/object.rst:292
|
||||
#: c-api/object.rst:301
|
||||
msgid ""
|
||||
"Returns ``1`` if the object *o* is considered to be true, and ``0`` "
|
||||
"otherwise. This is equivalent to the Python expression ``not not o``. On "
|
||||
"failure, return ``-1``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/object.rst:299
|
||||
#: c-api/object.rst:308
|
||||
msgid ""
|
||||
"Returns ``0`` if the object *o* is considered to be true, and ``1`` "
|
||||
"otherwise. This is equivalent to the Python expression ``not o``. On "
|
||||
"failure, return ``-1``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/object.rst:308
|
||||
#: c-api/object.rst:317
|
||||
msgid ""
|
||||
"When *o* is non-``NULL``, returns a type object corresponding to the object "
|
||||
"type of object *o*. On failure, raises :exc:`SystemError` and returns "
|
||||
|
@ -453,13 +467,13 @@ msgid ""
|
|||
"incremented reference count is needed."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/object.rst:319
|
||||
#: c-api/object.rst:328
|
||||
msgid ""
|
||||
"Return non-zero if the object *o* is of type *type* or a subtype of *type*, "
|
||||
"and ``0`` otherwise. Both parameters must be non-``NULL``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/object.rst:328
|
||||
#: c-api/object.rst:337
|
||||
msgid ""
|
||||
"Return the length of object *o*. If the object *o* provides either the "
|
||||
"sequence and mapping protocols, the sequence length is returned. On error, "
|
||||
|
@ -467,7 +481,7 @@ msgid ""
|
|||
"``len(o)``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/object.rst:335
|
||||
#: c-api/object.rst:344
|
||||
msgid ""
|
||||
"Return an estimated length for the object *o*. First try to return its "
|
||||
"actual length, then an estimate using :meth:`~object.__length_hint__`, and "
|
||||
|
@ -476,7 +490,7 @@ msgid ""
|
|||
"defaultvalue)``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/object.rst:345
|
||||
#: c-api/object.rst:354
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Return element of *o* corresponding to the object *key* or ``NULL`` on "
|
||||
|
@ -486,7 +500,7 @@ msgstr ""
|
|||
"l'attribut en cas de succès, ou *NULL* en cas d'échec. Ceci est équivalent à "
|
||||
"l'expression Python ``o.attr_name``."
|
||||
|
||||
#: c-api/object.rst:351
|
||||
#: c-api/object.rst:360
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Map the object *key* to the value *v*. Raise an exception and return ``-1`` "
|
||||
|
@ -498,7 +512,7 @@ msgstr ""
|
|||
"``0`` en cas de succès. Ceci est équivalent à l'instruction Python ``o."
|
||||
"attr_name = v``."
|
||||
|
||||
#: c-api/object.rst:359
|
||||
#: c-api/object.rst:368
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Remove the mapping for the object *key* from the object *o*. Return ``-1`` "
|
||||
|
@ -508,7 +522,7 @@ msgstr ""
|
|||
"Renvoie ``-1`` en cas d'échec. C'est l'équivalent de la commande Python "
|
||||
"``del o[key]``."
|
||||
|
||||
#: c-api/object.rst:365
|
||||
#: c-api/object.rst:374
|
||||
msgid ""
|
||||
"This is equivalent to the Python expression ``dir(o)``, returning a "
|
||||
"(possibly empty) list of strings appropriate for the object argument, or "
|
||||
|
@ -518,7 +532,7 @@ msgid ""
|
|||
"`PyErr_Occurred` will return false."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/object.rst:374
|
||||
#: c-api/object.rst:383
|
||||
msgid ""
|
||||
"This is equivalent to the Python expression ``iter(o)``. It returns a new "
|
||||
"iterator for the object argument, or the object itself if the object is "
|
||||
|
@ -526,7 +540,7 @@ msgid ""
|
|||
"object cannot be iterated."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/object.rst:382
|
||||
#: c-api/object.rst:391
|
||||
msgid ""
|
||||
"This is the equivalent to the Python expression ``aiter(o)``. Takes an :"
|
||||
"class:`AsyncIterable` object and returns an :class:`AsyncIterator` for it. "
|
||||
|
@ -583,10 +597,6 @@ msgstr ""
|
|||
#~ "par le *n*-uplet *args*. Si aucun argument n'est nécessaire, alors *args* "
|
||||
#~ "peut être égal à *NULL*."
|
||||
|
||||
#~ msgid ""
|
||||
#~ "This is the equivalent of the Python expression: ``callable(*args)``."
|
||||
#~ msgstr "Ceci est l'équivalent de l'expression Python : ``callable(*args)``."
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "Call a callable Python object *callable*, with a variable number of C "
|
||||
|
|
|
@ -5,14 +5,15 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-05-22 23:13+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2023-04-14 13:19+0200\n"
|
||||
"PO-Revision-Date: 2023-03-05 22:34+0100\n"
|
||||
"Last-Translator: Rémi Lapeyre <remi.lapeyre@lenstra.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.2.1\n"
|
||||
|
||||
#: c-api/refcounting.rst:8
|
||||
msgid "Reference Counting"
|
||||
|
@ -23,10 +24,12 @@ msgid ""
|
|||
"The macros in this section are used for managing reference counts of Python "
|
||||
"objects."
|
||||
msgstr ""
|
||||
"Les macros dans cette section permettent de gérer le compteur de références "
|
||||
"des objets Python."
|
||||
|
||||
#: c-api/refcounting.rst:16
|
||||
msgid "Increment the reference count for object *o*."
|
||||
msgstr ""
|
||||
msgstr "Incrémente le compteur de références de l'objet *o*."
|
||||
|
||||
#: c-api/refcounting.rst:18
|
||||
msgid ""
|
||||
|
@ -34,82 +37,102 @@ msgid ""
|
|||
"term:`strong reference` in-place. The :c:func:`Py_NewRef` function can be "
|
||||
"used to create a new :term:`strong reference`."
|
||||
msgstr ""
|
||||
"Cette fonction est souvent utilisée pour convertir une :term:`référence "
|
||||
"empruntée` en une :term:`référence forte` *sur place*. La fonction :c:func:"
|
||||
"`Py_NewRef` peut être utilisée pour créer une nouvelle :term:`référence "
|
||||
"forte`."
|
||||
|
||||
#: c-api/refcounting.rst:22
|
||||
msgid ""
|
||||
"The object must not be ``NULL``; if you aren't sure that it isn't ``NULL``, "
|
||||
"use :c:func:`Py_XINCREF`."
|
||||
msgstr ""
|
||||
"L'objet ne doit pas être ``NULL``, la fonction :c:func:`Py_XINCREF` doit "
|
||||
"être utilisée s'il est possible qu'il soit ``NULL``."
|
||||
|
||||
#: c-api/refcounting.rst:28
|
||||
msgid ""
|
||||
"Increment the reference count for object *o*. The object may be ``NULL``, "
|
||||
"in which case the macro has no effect."
|
||||
msgstr ""
|
||||
"Incrémente le compteur de références de l'objet *o*. La macro n'a pas "
|
||||
"d'effet si l'objet est ``NULL``."
|
||||
|
||||
#: c-api/refcounting.rst:31
|
||||
msgid "See also :c:func:`Py_XNewRef`."
|
||||
msgstr ""
|
||||
msgstr "Voir aussi :c:func:`Py_XNewRef`."
|
||||
|
||||
#: c-api/refcounting.rst:36
|
||||
msgid ""
|
||||
"Create a new :term:`strong reference` to an object: increment the reference "
|
||||
"count of the object *o* and return the object *o*."
|
||||
msgstr ""
|
||||
"Créer une nouvelle :term:`référence forte` d'un objet : incrémente le "
|
||||
"compteur de référence de l'objet *o* et renvoie l'objet *o*."
|
||||
|
||||
#: c-api/refcounting.rst:39
|
||||
msgid ""
|
||||
"When the :term:`strong reference` is no longer needed, :c:func:`Py_DECREF` "
|
||||
"should be called on it to decrement the object reference count."
|
||||
msgstr ""
|
||||
":c:func:`Py_DECREF` doit être appelée quand la :term:`référence forte` n'est "
|
||||
"plus utilisée pour décrémenter le compteur de références de l'objet."
|
||||
|
||||
#: c-api/refcounting.rst:42
|
||||
msgid ""
|
||||
"The object *o* must not be ``NULL``; use :c:func:`Py_XNewRef` if *o* can be "
|
||||
"``NULL``."
|
||||
msgstr ""
|
||||
"L'objet *o* ne doit pas être ``NULL`` et la fonction :c:func:`Py_XNewRef` "
|
||||
"doit être utilisée si *o* peut être ``NULL``."
|
||||
|
||||
#: c-api/refcounting.rst:45
|
||||
msgid "For example::"
|
||||
msgstr ""
|
||||
msgstr "Par exemple ::"
|
||||
|
||||
#: c-api/refcounting.rst:50
|
||||
msgid "can be written as::"
|
||||
msgstr ""
|
||||
msgstr "peut s'écrire ::"
|
||||
|
||||
#: c-api/refcounting.rst:54
|
||||
msgid "See also :c:func:`Py_INCREF`."
|
||||
msgstr ""
|
||||
msgstr "Voir aussi :c:func:`Py_INCREF`."
|
||||
|
||||
#: c-api/refcounting.rst:61
|
||||
msgid "Similar to :c:func:`Py_NewRef`, but the object *o* can be NULL."
|
||||
msgstr ""
|
||||
msgstr "Semblable à :c:func:`Py_NewRef` mais l'objet *o* peut être ``NULL``."
|
||||
|
||||
#: c-api/refcounting.rst:63
|
||||
msgid "If the object *o* is ``NULL``, the function just returns ``NULL``."
|
||||
msgstr ""
|
||||
msgstr "Cette fonction renvoie ``NULL`` si l'objet *o* est ``NULL``."
|
||||
|
||||
#: c-api/refcounting.rst:70
|
||||
msgid "Decrement the reference count for object *o*."
|
||||
msgstr ""
|
||||
msgstr "Décrémente le compteur de références de l'objet *o*."
|
||||
|
||||
#: c-api/refcounting.rst:72
|
||||
msgid ""
|
||||
"If the reference count reaches zero, the object's type's deallocation "
|
||||
"function (which must not be ``NULL``) is invoked."
|
||||
msgstr ""
|
||||
"Si le compteur de références atteint zéro, la fonction de dés-allocation du "
|
||||
"type de l'objet (qui ne doit pas être ``NULL``) est invoquée."
|
||||
|
||||
#: c-api/refcounting.rst:75
|
||||
msgid ""
|
||||
"This function is usually used to delete a :term:`strong reference` before "
|
||||
"exiting its scope."
|
||||
msgstr ""
|
||||
"Cette fonction est généralement utilisée pour supprimer une :term:`référence "
|
||||
"forte` avant qu'elle ne soit plus accessible."
|
||||
|
||||
#: c-api/refcounting.rst:78
|
||||
msgid ""
|
||||
"The object must not be ``NULL``; if you aren't sure that it isn't ``NULL``, "
|
||||
"use :c:func:`Py_XDECREF`."
|
||||
msgstr ""
|
||||
"L'objet en argument ne doit pas être ``NULL``. :c:func:`Py_XDECREF` doit "
|
||||
"être utilisée si l'objet peut être ``NULL``."
|
||||
|
||||
#: c-api/refcounting.rst:83
|
||||
msgid ""
|
||||
|
@ -123,6 +146,15 @@ msgid ""
|
|||
"update the list data structure, and then call :c:func:`Py_DECREF` for the "
|
||||
"temporary variable."
|
||||
msgstr ""
|
||||
"La fonction de dés-allocation peut invoquer du code Python arbitraire (par "
|
||||
"exemple quand une instance d'une classe avec une méthode :meth:`__del__` est "
|
||||
"supprimée). Le code exécuté a accès à toutes les variables Python globales "
|
||||
"mais les exceptions lors de l'exécution de ce code ne sont pas propagées. "
|
||||
"Tous les objets qui peuvent être atteints à partir d'une variable globale "
|
||||
"doivent être dans un état cohérent avant d'appeler :c:func:`Py_DECREF`. Par "
|
||||
"exemple le code pour supprimer un élément d'une liste doit copier une "
|
||||
"référence à l'objet dans une variable temporaire, mettre à jour la liste, et "
|
||||
"enfin appeler :c:func:`Py_DECREF` avec la variable temporaire."
|
||||
|
||||
#: c-api/refcounting.rst:95
|
||||
msgid ""
|
||||
|
@ -130,6 +162,10 @@ msgid ""
|
|||
"in which case the macro has no effect; otherwise the effect is the same as "
|
||||
"for :c:func:`Py_DECREF`, and the same warning applies."
|
||||
msgstr ""
|
||||
"Décrémente le compteur de références de l'objet *o*. L'objet peut être "
|
||||
"``NULL``, dans ce cas la macro n'a pas d'effet. Dans le cas contraire le "
|
||||
"comportement est identique à :c:func:`Py_DECREF` et les mêmes avertissements "
|
||||
"sont de rigueur."
|
||||
|
||||
#: c-api/refcounting.rst:102
|
||||
msgid ""
|
||||
|
@ -140,24 +176,38 @@ msgid ""
|
|||
"object passed because the macro carefully uses a temporary variable and sets "
|
||||
"the argument to ``NULL`` before decrementing its reference count."
|
||||
msgstr ""
|
||||
"Décrémente le compteur de références de l'objet *o*. L'objet peut être "
|
||||
"``NULL``, dans ce cas la macro n'a pas d'effet. Dans le cas contraire le "
|
||||
"comportement est identique à :c:func:`Py_DECREF`, puis l'argument est mis à "
|
||||
"``NULL``. L'avertissement au sujet de l'objet passé en argument à :c:func:"
|
||||
"`Py_DECREF` ne s'applique pas car la macro utilise une variable temporaire "
|
||||
"et met l'objet à ``NULL`` avant de décrémenter le compteur de références."
|
||||
|
||||
#: c-api/refcounting.rst:109
|
||||
msgid ""
|
||||
"It is a good idea to use this macro whenever decrementing the reference "
|
||||
"count of an object that might be traversed during garbage collection."
|
||||
msgstr ""
|
||||
"Il est recommandé d'utiliser cette macro lorsqu'on décrémente le compteur de "
|
||||
"référence d'un objet qui peut être parcouru par le ramasse-miette."
|
||||
|
||||
#: c-api/refcounting.rst:114
|
||||
msgid ""
|
||||
"Increment the reference count for object *o*. A function version of :c:func:"
|
||||
"`Py_XINCREF`. It can be used for runtime dynamic embedding of Python."
|
||||
msgstr ""
|
||||
"Incrémente le compteur de références de l'objet *o*. C'est la version "
|
||||
"fonctionnelle de :c:func:`Py_XINCREF`. Elle peut être utilisée lorsque "
|
||||
"Python est embarqué dynamiquement dans une application."
|
||||
|
||||
#: c-api/refcounting.rst:120
|
||||
msgid ""
|
||||
"Decrement the reference count for object *o*. A function version of :c:func:"
|
||||
"`Py_XDECREF`. It can be used for runtime dynamic embedding of Python."
|
||||
msgstr ""
|
||||
"Décrémente le compteur de références de l'objet *o*. C'est la version "
|
||||
"fonctionnelle de :c:func:`Py_XDECREF`. Elle peut être utilisée lorsque "
|
||||
"Python est embarqué dynamiquement dans une application."
|
||||
|
||||
#: c-api/refcounting.rst:124
|
||||
msgid ""
|
||||
|
@ -165,3 +215,7 @@ msgid ""
|
|||
"core: :c:func:`_Py_Dealloc`, :c:func:`_Py_ForgetReference`, :c:func:"
|
||||
"`_Py_NewReference`, as well as the global variable :c:data:`_Py_RefTotal`."
|
||||
msgstr ""
|
||||
"Les fonctions ou macros suivantes doivent être uniquement utilisées au sein "
|
||||
"de l'interpréteur et ne font pas partie de l'API publique : :c:func:"
|
||||
"`_Py_Dealloc`, :c:func:`_Py_ForgetReference`, :c:func:`_Py_NewReference`, "
|
||||
"ainsi que la variable globale :c:data:`_Py_RefTotal`."
|
||||
|
|
199
c-api/stable.po
199
c-api/stable.po
|
@ -6,20 +6,20 @@ msgstr ""
|
|||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2021-09-23 16:16+0200\n"
|
||||
"PO-Revision-Date: 2018-10-04 12:26+0200\n"
|
||||
"Last-Translator: Julien Palard <julien@palard.fr>\n"
|
||||
"PO-Revision-Date: 2023-03-05 22:38+0100\n"
|
||||
"Last-Translator: Rémi Lapeyre <remi.lapeyre@lenstra.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.2.1\n"
|
||||
|
||||
#: c-api/stable.rst:7
|
||||
msgid "C API Stability"
|
||||
msgstr ""
|
||||
msgstr "Stabilité de l’API C"
|
||||
|
||||
#: c-api/stable.rst:9
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Python's C API is covered by the Backwards Compatibility Policy, :pep:`387`. "
|
||||
"While the C API will change with every minor release (e.g. from 3.9 to "
|
||||
|
@ -27,10 +27,12 @@ msgid ""
|
|||
"API. Changing existing API or removing API is only done after a deprecation "
|
||||
"period or to fix serious issues."
|
||||
msgstr ""
|
||||
"L'API C de Python change à chaque version. La majorité de ces changement "
|
||||
"n'affecte cependant pas la compatibilité du code source. Typiquement, des "
|
||||
"API sont ajoutées, mais ni modifiées ni supprimées (bien que certaines "
|
||||
"interfaces puissent être supprimées, après avoir d'abord été dépréciées)."
|
||||
"L'API C respecte la politique de rétrocompatibilité de Python, :pep:`387`. "
|
||||
"Malgré la présence d’évolutions dans chaque version mineure (par exemple "
|
||||
"entre 3.9 et 3.10), la majorité de ces changements n'affecte pas la "
|
||||
"compatibilité du code source. Typiquement des API sont ajoutées mais pas "
|
||||
"modifiées ou supprimées, bien que cela puisse arriver après une période de "
|
||||
"dépréciation ou pour corriger un problème important."
|
||||
|
||||
#: c-api/stable.rst:15
|
||||
msgid ""
|
||||
|
@ -40,16 +42,24 @@ msgid ""
|
|||
"work on 3.10.8 and vice versa, but will need to be compiled separately for "
|
||||
"3.9.x and 3.10.x."
|
||||
msgstr ""
|
||||
"L’interface binaire de CPython (ABI) est entièrement compatible au sein "
|
||||
"d’une version mineure (à condition que la compilation soit toujours faite de "
|
||||
"même manière, comme indiqué dans :ref:`stable-abi-platform` ci-dessous). "
|
||||
"Ainsi le code compilé pour Python 3.10.0 fonctionnera avec Python 3.10.8 et "
|
||||
"inversement, mais il devra être compilé séparément pour 3.9.x et 3.10.x."
|
||||
|
||||
#: c-api/stable.rst:21
|
||||
msgid ""
|
||||
"Names prefixed by an underscore, such as ``_Py_InternalState``, are private "
|
||||
"API that can change without notice even in patch releases."
|
||||
msgstr ""
|
||||
"Les noms commençant par un caractère souligné, comme ``_Py_InternalState``, "
|
||||
"font partie de l’API privée et peuvent changer sans préavis même dans une "
|
||||
"version de correctif."
|
||||
|
||||
#: c-api/stable.rst:26
|
||||
msgid "Stable Application Binary Interface"
|
||||
msgstr "ABI Stable"
|
||||
msgstr "ABI stable"
|
||||
|
||||
#: c-api/stable.rst:28
|
||||
msgid ""
|
||||
|
@ -58,6 +68,11 @@ msgid ""
|
|||
"multiple versions of Python. Contents of the Limited API are :ref:`listed "
|
||||
"below <stable-abi-list>`."
|
||||
msgstr ""
|
||||
"Le concept d’*API restreinte*, un sous-ensemble de l’API C de Python, existe "
|
||||
"depuis Python 3.2. Les extensions qui utilisent uniquement l’API restreinte "
|
||||
"peuvent être compilées une seule fois et fonctionner avec plusieurs versions "
|
||||
"de Python. Les objets faisant partie de l’API restreinte sont :ref:"
|
||||
"`documentés ci-dessous <stable-abi-list>`."
|
||||
|
||||
#: c-api/stable.rst:33
|
||||
msgid ""
|
||||
|
@ -66,6 +81,11 @@ msgid ""
|
|||
"symbols exposed in the Limited API, but also other ones – for example, "
|
||||
"functions necessary to support older versions of the Limited API."
|
||||
msgstr ""
|
||||
"Python a aussi une *ABI stable* : un ensemble de symboles qui sont "
|
||||
"compatibles avec l’ensemble des versions Python 3.x. L’ABI stable contient "
|
||||
"les symboles utilisés par l’API restreinte, mais pas seulement — par exemple "
|
||||
"les fonctions nécessaires pour supporter les versions précédentes de l’API "
|
||||
"restreinte en font aussi partie."
|
||||
|
||||
#: c-api/stable.rst:38
|
||||
msgid ""
|
||||
|
@ -73,12 +93,17 @@ msgid ""
|
|||
"and Stable ABI work the same way for all uses of the API – for example, "
|
||||
"embedding Python.)"
|
||||
msgstr ""
|
||||
"(Par simplicité ce document parle *d’extensions*, mais l’API restreinte et "
|
||||
"l’ABI stable fonctionnent de la même manière pour tous les cas d’usages de "
|
||||
"l’API — par exemple pour embarquer Python.)"
|
||||
|
||||
#: c-api/stable.rst:44
|
||||
msgid ""
|
||||
"Define this macro before including ``Python.h`` to opt in to only use the "
|
||||
"Limited API, and to select the Limited API version."
|
||||
msgstr ""
|
||||
"Définissez cette macro avant d’inclure ``Python.h`` pour n’inclure que l’API "
|
||||
"restreinte et indiquer sa version."
|
||||
|
||||
#: c-api/stable.rst:47
|
||||
msgid ""
|
||||
|
@ -88,6 +113,11 @@ msgid ""
|
|||
"the specified one onward, and can use Limited API introduced up to that "
|
||||
"version."
|
||||
msgstr ""
|
||||
"Définissez ``Py_LIMITED_API`` à la valeur de :c:data:`PY_VERSION_HEX` "
|
||||
"correspond à la version minimale de Python que votre extension supporte. "
|
||||
"Cette extension fonctionnera sans re-compilation avec toutes les versions "
|
||||
"futures de Python 3, et peut utiliser l’ensemble des éléments de l’API "
|
||||
"restreinte présent dans cette version."
|
||||
|
||||
#: c-api/stable.rst:53
|
||||
msgid ""
|
||||
|
@ -95,12 +125,19 @@ msgid ""
|
|||
"minor version (e.g. ``0x030A0000`` for Python 3.10) for stability when "
|
||||
"compiling with future Python versions."
|
||||
msgstr ""
|
||||
"Il est recommandé de renseigner une version mineure minimale (par exemple "
|
||||
"``0x030A0000`` pour Python 3.10) plutôt que d’utiliser directement la macro "
|
||||
"``PY_VERSION_HEX`` pour ne pas dépendre de la version de Python utilisée "
|
||||
"lors de la compilation."
|
||||
|
||||
#: c-api/stable.rst:57
|
||||
msgid ""
|
||||
"You can also define ``Py_LIMITED_API`` to ``3``. This works the same as "
|
||||
"``0x03020000`` (Python 3.2, the version that introduced Limited API)."
|
||||
msgstr ""
|
||||
"Vous pouvez aussi définir ``Py_LIMITED_API`` à ``3``. Cette valeur est "
|
||||
"équivalente à ``0x03020000`` correspondant à Python 3.2, la première version "
|
||||
"à supporter l’API restreinte."
|
||||
|
||||
#: c-api/stable.rst:60
|
||||
msgid ""
|
||||
|
@ -108,6 +145,9 @@ msgid ""
|
|||
"``python3.dll`` rather than a version-specific library such as ``python39."
|
||||
"dll``."
|
||||
msgstr ""
|
||||
"Sur Windows les extensions qui utilisent l’ABI stable doivent être liées "
|
||||
"avec ``python3.dll`` et non pas avec une bibliothèque spécifique à une "
|
||||
"version comme ``python39.dll``."
|
||||
|
||||
#: c-api/stable.rst:64
|
||||
msgid ""
|
||||
|
@ -117,6 +157,12 @@ msgid ""
|
|||
"to ensure that, for example, extensions built with the 3.10+ Limited API are "
|
||||
"not installed for lower versions of Python."
|
||||
msgstr ""
|
||||
"Sur certaines plateformes Python essaiera de charger une bibliothèque "
|
||||
"partagée dont le nom contient ``abi3`` (par exemple ``mymodule.abi3.so``). "
|
||||
"Il ne vérifie pas si ces extensions respectent l’ABI stable. L’utilisateur "
|
||||
"(ou ses outils d’administration) doit s’assurer que les extensions compilées "
|
||||
"avec une version donnée de l’API restreinte, par exemple 3.10+, ne sont pas "
|
||||
"utilisées avec des versions plus anciennes de Python."
|
||||
|
||||
#: c-api/stable.rst:71
|
||||
msgid ""
|
||||
|
@ -124,16 +170,23 @@ msgid ""
|
|||
"library, not solely as macros. This makes them usable from languages that "
|
||||
"don't use the C preprocessor."
|
||||
msgstr ""
|
||||
"Toutes les fonctions de l’ABI stable sont présentes dans la bibliothèque "
|
||||
"dynamique de Python en tant que fonction, et pas uniquement comme macro. "
|
||||
"Elles peuvent donc être utilisées avec des langages qui n’utilisent pas le "
|
||||
"pré-processeur C."
|
||||
|
||||
#: c-api/stable.rst:77
|
||||
msgid "Limited API Scope and Performance"
|
||||
msgstr ""
|
||||
msgstr "Porté de l’API restreinte et performance"
|
||||
|
||||
#: c-api/stable.rst:79
|
||||
msgid ""
|
||||
"The goal for the Limited API is to allow everything that is possible with "
|
||||
"the full C API, but possibly with a performance penalty."
|
||||
msgstr ""
|
||||
"L’objectif de l’API restreinte est de permettre l’ensemble des opérations "
|
||||
"possibles avec l’API C étendue, mais peut avoir un impact sur les "
|
||||
"performances."
|
||||
|
||||
#: c-api/stable.rst:82
|
||||
msgid ""
|
||||
|
@ -141,6 +194,10 @@ msgid ""
|
|||
"variant :c:func:`PyList_GET_ITEM` is not. The macro can be faster because it "
|
||||
"can rely on version-specific implementation details of the list object."
|
||||
msgstr ""
|
||||
"Par exemple la fonction :c:func:`PyList_GetItem` est disponible, mais la "
|
||||
"macro « dangereuse » :c:func:`PyList_GET_ITEM` ne l’est pas. Cette macro "
|
||||
"peut être plus rapide car elle dépend de détails d’implémentation spécifique "
|
||||
"à l’objet ``list``."
|
||||
|
||||
#: c-api/stable.rst:87
|
||||
msgid ""
|
||||
|
@ -149,6 +206,11 @@ msgid ""
|
|||
"allowing stability as Python's data structures are improved, but possibly "
|
||||
"reducing performance."
|
||||
msgstr ""
|
||||
"Si ``Py_LIMITED_API`` n’est pas défini certaines fonctions de l’API C seront "
|
||||
"remplacées par des macros ou une version en-ligne. Définir "
|
||||
"``Py_LIMITED_API`` désactive cette optimisation, permettant de se garantir "
|
||||
"contre les évolutions des structures de données utilisées par Python, et "
|
||||
"peut réduire les performances."
|
||||
|
||||
#: c-api/stable.rst:92
|
||||
msgid ""
|
||||
|
@ -159,10 +221,17 @@ msgid ""
|
|||
"where a version-specific one is not available – for example, for prereleases "
|
||||
"of an upcoming Python version."
|
||||
msgstr ""
|
||||
"En omettant la définition de ``Py_LIMITED_API`` il est possible de compiler "
|
||||
"une extension utilisant l’API restreinte avec une version spécifique de "
|
||||
"l’ABI. Les performances seront meilleures pour cette version de Python, mais "
|
||||
"la compatibilité sera réduite. Compiler en définissant ``Py_LIMITED_API`` "
|
||||
"produira une extension qui peut être utilisée quand une variante spécifique "
|
||||
"à une version n’est pas disponible — par exemple pour une version alpha de "
|
||||
"Python."
|
||||
|
||||
#: c-api/stable.rst:101
|
||||
msgid "Limited API Caveats"
|
||||
msgstr ""
|
||||
msgstr "Inconvénients de l’API restreinte"
|
||||
|
||||
#: c-api/stable.rst:103
|
||||
msgid ""
|
||||
|
@ -171,6 +240,10 @@ msgid ""
|
|||
"only covers definitions, but an API also includes other issues, such as "
|
||||
"expected semantics."
|
||||
msgstr ""
|
||||
"Compiler avec ``Py_LIMITED_API`` *n’est pas* une garantie absolue que le "
|
||||
"code est conforme à l’API restreinte ou à l’ABI stable. ``Py_LIMITED_API`` "
|
||||
"ne concerne que la définition des objets, mais une API inclut aussi d’autres "
|
||||
"spécificités comme le comportement attendu."
|
||||
|
||||
#: c-api/stable.rst:108
|
||||
msgid ""
|
||||
|
@ -181,18 +254,31 @@ msgid ""
|
|||
"the argument will be used directly, causing a ``NULL`` dereference and "
|
||||
"crash. A similar argument works for fields of structs."
|
||||
msgstr ""
|
||||
"Une des limitations est que ``Py_LIMITED_API`` ne protège pas contre l’appel "
|
||||
"d’une fonction avec des arguments qui sont invalides pour une version de "
|
||||
"Python plus ancienne. Par exemple considérons une fonction qui accepte "
|
||||
"``NULL`` comme argument à partir de 3.9. ``NULL`` permet maintenant "
|
||||
"d’utiliser le comportement par défaut, mais Python 3.8 essayera d’accéder à "
|
||||
"l’objet pointé et dé-référencera ``NULL``, causant un crash. Des problèmes "
|
||||
"similaires peuvent se produire avec les attributs des structures."
|
||||
|
||||
#: c-api/stable.rst:115
|
||||
msgid ""
|
||||
"Another issue is that some struct fields are currently not hidden when "
|
||||
"``Py_LIMITED_API`` is defined, even though they're part of the Limited API."
|
||||
msgstr ""
|
||||
"Un autre problème est que certains attributs ne sont pas encore cachés "
|
||||
"lorsque ``Py_LIMITED_API`` est défini, même s’ils ne font pas partie de "
|
||||
"l’API restreinte."
|
||||
|
||||
#: c-api/stable.rst:118
|
||||
msgid ""
|
||||
"For these reasons, we recommend testing an extension with *all* minor Python "
|
||||
"versions it supports, and preferably to build with the *lowest* such version."
|
||||
msgstr ""
|
||||
"Pour ces raisons il est recommandé de tester une extension avec *l’ensemble "
|
||||
"des versions mineures* supportées de Python, et généralement de la compiler "
|
||||
"avec la plus *ancienne* de ces versions."
|
||||
|
||||
#: c-api/stable.rst:121
|
||||
msgid ""
|
||||
|
@ -201,6 +287,11 @@ msgid ""
|
|||
"few private declarations are exposed for technical reasons (or even "
|
||||
"unintentionally, as bugs)."
|
||||
msgstr ""
|
||||
"Il est aussi recommandé de vérifier la documentation de toutes les API "
|
||||
"utilisées pour vérifier qu’elles fassent bien partie de l’API restreinte. "
|
||||
"Même lorsque ``Py_LIMITED_API`` est défini quelques fonctions privées "
|
||||
"peuvent être exposées aux utilisateurs pour des raisons techniques, ou par "
|
||||
"erreur."
|
||||
|
||||
#: c-api/stable.rst:126
|
||||
msgid ""
|
||||
|
@ -210,10 +301,15 @@ msgid ""
|
|||
"particular, parts of the Limited API may be deprecated and removed, provided "
|
||||
"that the Stable ABI stays stable."
|
||||
msgstr ""
|
||||
"Notez aussi que l’API restreinte n’est pas forcément stable : compiler avec "
|
||||
"Python 3.8 en définissant ``Py_LIMITED_API`` garanti que l’extension "
|
||||
"fonctionnera avec Python 3.12, mais pas qu’elle pourra *être compilée* avec "
|
||||
"Python 3.12. En particulier certaines parties de l’API restreinte peuvent "
|
||||
"être dépréciées et retirées tant que l’ABI stable n’est pas modifiée."
|
||||
|
||||
#: c-api/stable.rst:136
|
||||
msgid "Platform Considerations"
|
||||
msgstr ""
|
||||
msgstr "Considérations relatives aux plateformes"
|
||||
|
||||
#: c-api/stable.rst:138
|
||||
msgid ""
|
||||
|
@ -222,6 +318,11 @@ msgid ""
|
|||
"ABI, these details define a “platform”. They usually depend on the OS type "
|
||||
"and processor architecture"
|
||||
msgstr ""
|
||||
"La stabilité de l’ABI ne dépend pas que de Python mais aussi du compilateur "
|
||||
"utilisé, des bibliothèques systèmes et des options du compilateur. "
|
||||
"L’ensemble de ces détails correspondent à ce que l’ABI stable appelle une "
|
||||
"« plateforme ». Ils dépendent généralement du système d’exploitation et de "
|
||||
"l’architecture du processeur."
|
||||
|
||||
#: c-api/stable.rst:143
|
||||
msgid ""
|
||||
|
@ -230,76 +331,16 @@ msgid ""
|
|||
"does not break the Stable ABI. This is the case with Windows and macOS "
|
||||
"releases from ``python.org`` and many third-party distributors."
|
||||
msgstr ""
|
||||
"Les distributeurs de Python doivent s’assurer que toutes les versions de "
|
||||
"Python pour une plateforme donnée sont compilées de manière à ne pas rompre "
|
||||
"la compatibilité de l’ABI stable. C’est le cas des versions produites pour "
|
||||
"Windows et macOS de ``python.org`` et de la plupart des distributions "
|
||||
"tierces."
|
||||
|
||||
#: c-api/stable.rst:153
|
||||
msgid "Contents of Limited API"
|
||||
msgstr ""
|
||||
msgstr "Contenu de l’API restreinte"
|
||||
|
||||
#: c-api/stable.rst:156
|
||||
msgid "Currently, the Limited API includes the following items:"
|
||||
msgstr ""
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Unfortunately, the API compatibility does not extend to binary "
|
||||
#~ "compatibility (the ABI). The reason is primarily the evolution of struct "
|
||||
#~ "definitions, where addition of a new field, or changing the type of a "
|
||||
#~ "field, might not break the API, but can break the ABI. As a consequence, "
|
||||
#~ "extension modules need to be recompiled for every Python release "
|
||||
#~ "(although an exception is possible on Unix when none of the affected "
|
||||
#~ "interfaces are used). In addition, on Windows, extension modules link "
|
||||
#~ "with a specific pythonXY.dll and need to be recompiled to link with a "
|
||||
#~ "newer one."
|
||||
#~ msgstr ""
|
||||
#~ "Malheureusement, la compatibilité de l'API ne s'étend pas à une "
|
||||
#~ "compatibilité binaire (l'ABI). L'évolution des structures en est la "
|
||||
#~ "raison principale : l'ajout de nouveaux attributs, ou le changement du "
|
||||
#~ "type d'un attribut peut ne pas casser l'API mais casser l'ABI. Par "
|
||||
#~ "conséquent, les modules d'extension doivent être recompilés à chaque "
|
||||
#~ "nouvelle version de Python (ce n'est exceptionnellement pas nécessaire "
|
||||
#~ "sur Unix, si aucune des interfaces modifiées n'est utilisée). De plus, "
|
||||
#~ "sous Windows, les modules d'extension sont liés à un *pythonXY.dll* "
|
||||
#~ "spécifique, ils est donc nécessaire de les recompiler pour les lier au "
|
||||
#~ "nouveau DLL."
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Since Python 3.2, a subset of the API has been declared to guarantee a "
|
||||
#~ "stable ABI. Extension modules wishing to use this API (called \"limited "
|
||||
#~ "API\") need to define ``Py_LIMITED_API``. A number of interpreter details "
|
||||
#~ "then become hidden from the extension module; in return, a module is "
|
||||
#~ "built that works on any 3.x version (x>=2) without recompilation."
|
||||
#~ msgstr ""
|
||||
#~ "Depuis Python 3.2 il est garanti qu'une certaine partie de l'API gardera "
|
||||
#~ "une ABI stable. Les modules d'extension souhaitant utiliser cette API "
|
||||
#~ "(Appellée \"API limitée\") doivent définir ``Py_LIMITED_API``. Des "
|
||||
#~ "spécificités de l'interpréteur sont alors cachées au module, en "
|
||||
#~ "contrepartie le module devient compatible avec toutes les versions de "
|
||||
#~ "Python 3.x (x>=2) sans recompilation."
|
||||
|
||||
#~ msgid ""
|
||||
#~ "In some cases, the stable ABI needs to be extended with new functions. "
|
||||
#~ "Extension modules wishing to use these new APIs need to set "
|
||||
#~ "``Py_LIMITED_API`` to the ``PY_VERSION_HEX`` value (see :ref:"
|
||||
#~ "`apiabiversion`) of the minimum Python version they want to support (e.g. "
|
||||
#~ "``0x03030000`` for Python 3.3). Such modules will work on all subsequent "
|
||||
#~ "Python releases, but fail to load (because of missing symbols) on the "
|
||||
#~ "older releases."
|
||||
#~ msgstr ""
|
||||
#~ "Dans certains cas, il est nécessaire d'étendre l'ABI stable avec de "
|
||||
#~ "nouvelles fonctions. Les modules d'extension souhaitant utiliser ces "
|
||||
#~ "nouvelles APIs doivent configurer ``Py_LIMITED_API`` à la valeur "
|
||||
#~ "``Py_VERSION_HEX`` correspondant à la plus ancienne version de Python "
|
||||
#~ "qu'ils souhaitent supporter (voir :ref:`apiabiversion`, par exemple "
|
||||
#~ "``0x03030000`` pour Python 3.3). De tels modules fonctionneront dans "
|
||||
#~ "toutes les versions ultérieures de Python, mais ne pourront pas se "
|
||||
#~ "charger (dû à des symboles manquants) sur les versions plus anciennes."
|
||||
|
||||
#~ msgid ""
|
||||
#~ "As of Python 3.2, the set of functions available to the limited API is "
|
||||
#~ "documented in :pep:`384`. In the C API documentation, API elements that "
|
||||
#~ "are not part of the limited API are marked as \"Not part of the limited "
|
||||
#~ "API.\""
|
||||
#~ msgstr ""
|
||||
#~ "Depuis Python 3.2, l'ensemble des fonctions exposées par l'API limitée "
|
||||
#~ "est documentée dans la :pep:`384`. Dans la documentation de l'API C, les "
|
||||
#~ "éléments ne faisant pas partie de l'API limitée sont notés \"Ne faisant "
|
||||
#~ "pas partie de l'API limitée\" (*\"Not part of the limited API\"*)."
|
||||
msgstr "Pour le moment l’API restreinte inclut les éléments suivants :"
|
||||
|
|
|
@ -6,8 +6,8 @@ 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: 2018-10-04 12:27+0200\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"PO-Revision-Date: 2023-02-20 12:47+0100\n"
|
||||
"Last-Translator: Victor Stinner <vstinner@python.org>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
"Language: fr\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -16,11 +16,11 @@ msgstr ""
|
|||
|
||||
#: c-api/unicode.rst:6
|
||||
msgid "Unicode Objects and Codecs"
|
||||
msgstr ""
|
||||
msgstr "Objets Unicode et Codecs"
|
||||
|
||||
#: c-api/unicode.rst:12
|
||||
msgid "Unicode Objects"
|
||||
msgstr ""
|
||||
msgstr "Objets Unicode"
|
||||
|
||||
#: c-api/unicode.rst:14
|
||||
msgid ""
|
||||
|
@ -31,6 +31,12 @@ msgid ""
|
|||
"65536; otherwise, code points must be below 1114112 (which is the full "
|
||||
"Unicode range)."
|
||||
msgstr ""
|
||||
"Depuis l'implémentation de :pep:`393` dans Python 3.3, les objets Unicode "
|
||||
"utilisent une variété de représentations internes, pour permettre de gérer "
|
||||
"l'intervalle complet des caractères Unicode en restant efficace en termes de "
|
||||
"mémoire. Il y a des cas spéciaux pour les chaînes où tous les points de code "
|
||||
"sont inférieurs à 128, 256, ou 65536 ; sinon, les points de code doivent "
|
||||
"être inférieurs à 1114112 (qui est l'intervalle Unicode complet)."
|
||||
|
||||
#: c-api/unicode.rst:20
|
||||
msgid ""
|
||||
|
@ -38,12 +44,18 @@ msgid ""
|
|||
"cached in the Unicode object. The :c:expr:`Py_UNICODE*` representation is "
|
||||
"deprecated and inefficient."
|
||||
msgstr ""
|
||||
"Des représentations :c:expr:`Py_UNICODE*` et UTF-8 sont créées à la demande "
|
||||
"et mises en cache dans l'objet Unicode. La représentation :c:expr:"
|
||||
"`Py_UNICODE*` est dépréciée et inefficace."
|
||||
|
||||
#: c-api/unicode.rst:24
|
||||
msgid ""
|
||||
"Due to the transition between the old APIs and the new APIs, Unicode objects "
|
||||
"can internally be in two states depending on how they were created:"
|
||||
msgstr ""
|
||||
"En raison de la transition des anciennes APIs vers les nouvelles APIs, les "
|
||||
"objets Unicode peuvent être dans deux états internes selon comment ils ont "
|
||||
"été créés :"
|
||||
|
||||
#: c-api/unicode.rst:27
|
||||
msgid ""
|
||||
|
@ -51,6 +63,9 @@ msgid ""
|
|||
"Unicode API. They use the most efficient representation allowed by the "
|
||||
"implementation."
|
||||
msgstr ""
|
||||
"Les objets Unicode « canoniques » sont tous les objets créés par une API "
|
||||
"Unicode non-dépréciée. Ils utilisent la représentation la plus efficace "
|
||||
"permise par l'implémentation."
|
||||
|
||||
#: c-api/unicode.rst:31
|
||||
msgid ""
|
||||
|
@ -59,6 +74,10 @@ msgid ""
|
|||
"`Py_UNICODE*` representation; you will have to call :c:func:"
|
||||
"`PyUnicode_READY` on them before calling any other API."
|
||||
msgstr ""
|
||||
"Les objets Unicode « historiques » ont été créés via une des APIs dépréciées "
|
||||
"(typiquement :c:func:`PyUnicode_FromUnicode`) et supportent uniquement la "
|
||||
"représentation :c:expr:`Py_UNICODE*`; vous devrez appeler :c:func:"
|
||||
"`PyUnicode_READY` sur eux avant d'appeler n'importe quelle autre API."
|
||||
|
||||
#: c-api/unicode.rst:37
|
||||
msgid ""
|
||||
|
@ -66,16 +85,21 @@ msgid ""
|
|||
"APIs. All Unicode objects will be \"canonical\" since then. See :pep:`623` "
|
||||
"for more information."
|
||||
msgstr ""
|
||||
"Les objets Unicode « historiques » vont être supprimés de Python 3.12 avec "
|
||||
"les APIs dépréciées. Tous les objets Unicode vont être « canoniques » à "
|
||||
"partir de là. Voir :pep:`623` pour plus d'information."
|
||||
|
||||
#: c-api/unicode.rst:43
|
||||
msgid "Unicode Type"
|
||||
msgstr ""
|
||||
msgstr "Type Unicode"
|
||||
|
||||
#: c-api/unicode.rst:45
|
||||
msgid ""
|
||||
"These are the basic Unicode object types used for the Unicode implementation "
|
||||
"in Python:"
|
||||
msgstr ""
|
||||
"Voici les types d'objets Unicode utilisés pour l'implémentation Unicode en "
|
||||
"Python :"
|
||||
|
||||
#: c-api/unicode.rst:52
|
||||
msgid ""
|
||||
|
@ -83,12 +107,17 @@ msgid ""
|
|||
"characters of 32 bits, 16 bits and 8 bits, respectively. When dealing with "
|
||||
"single Unicode characters, use :c:type:`Py_UCS4`."
|
||||
msgstr ""
|
||||
"Voici les *typedefs* pour les types entiers non signés suffisamment large "
|
||||
"pour contenir des caractères de 32 bits, 16 bits et 8 bits, respectivement. "
|
||||
"Pour traiter des caractères uniques, utilisez :c:type:`Py_UCS4`."
|
||||
|
||||
#: c-api/unicode.rst:61
|
||||
msgid ""
|
||||
"This is a typedef of :c:expr:`wchar_t`, which is a 16-bit type or 32-bit "
|
||||
"type depending on the platform."
|
||||
msgstr ""
|
||||
"Ceci est un *typedef* de :c:expr:`wchar_t`, qui est un type 16-bit ou un "
|
||||
"type 32-bit selon la plateforme."
|
||||
|
||||
#: c-api/unicode.rst:64
|
||||
msgid ""
|
||||
|
@ -96,6 +125,9 @@ msgid ""
|
|||
"whether you selected a \"narrow\" or \"wide\" Unicode version of Python at "
|
||||
"build time."
|
||||
msgstr ""
|
||||
"Dans les versions précédentes, ceci était un type 16-bit ou un type 32-bit "
|
||||
"selon que vous choisissiez une version Unicode *narrow* ou *wide* de Python "
|
||||
"à la compilation."
|
||||
|
||||
#: c-api/unicode.rst:74
|
||||
msgid ""
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2023-04-14 13:19+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"
|
||||
|
@ -121,3 +121,16 @@ msgid "Similar to :c:func:`PyWeakref_GetObject`, but does no error checking."
|
|||
msgstr ""
|
||||
"Similaire à :c:func:`PyWeakref_GetObject`, mais implémenté comme une macro "
|
||||
"qui ne vérifie pas les erreurs."
|
||||
|
||||
#: c-api/weakref.rst:74
|
||||
msgid ""
|
||||
"This function is called by the :c:member:`~PyTypeObject.tp_dealloc` handler "
|
||||
"to clear weak references."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/weakref.rst:77
|
||||
msgid ""
|
||||
"This iterates through the weak references for *object* and calls callbacks "
|
||||
"for those references which have one. It returns when all callbacks have been "
|
||||
"attempted."
|
||||
msgstr ""
|
||||
|
|
|
@ -21,7 +21,7 @@ msgstr "Copyright"
|
|||
|
||||
#: copyright.rst:5
|
||||
msgid "Python and this documentation is:"
|
||||
msgstr "Python et cette documentation sont :"
|
||||
msgstr "Python et cette documentation sont :"
|
||||
|
||||
#: copyright.rst:7
|
||||
#, fuzzy
|
||||
|
|
3
dict
3
dict
|
@ -4,12 +4,14 @@
|
|||
-uplet
|
||||
-uplets
|
||||
017f
|
||||
1-uplet
|
||||
212a
|
||||
abi
|
||||
ahlstrom
|
||||
allocateur
|
||||
allocateurs
|
||||
alpn
|
||||
attendable
|
||||
base16
|
||||
base32
|
||||
base64
|
||||
|
@ -173,6 +175,7 @@ réusinages
|
|||
réusiné
|
||||
réutilisabilité
|
||||
serwy
|
||||
shebang
|
||||
shell
|
||||
slot
|
||||
smalltalk
|
||||
|
|
|
@ -68,7 +68,7 @@ msgstr "Créer une distribution source: la commande :command:`sdist`"
|
|||
|
||||
#: distutils/commandref.rst:60
|
||||
msgid "The manifest template commands are:"
|
||||
msgstr "Les commandes du modèle manifeste sont :"
|
||||
msgstr "Les commandes du modèle manifeste sont :"
|
||||
|
||||
#: distutils/commandref.rst:63
|
||||
msgid "Command"
|
||||
|
|
|
@ -128,7 +128,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Si tout ce que vous voulez est de distribuer un module appelé :mod:`foo`, "
|
||||
"contenu dans un fichier :file:`foo.py`, alors votre script d'installation "
|
||||
"peut se résumer à :"
|
||||
"peut se résumer à ::"
|
||||
|
||||
#: distutils/introduction.rst:67
|
||||
msgid "Some observations:"
|
||||
|
@ -178,7 +178,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Pour créer une distribution source pour ce module, il faut créer un script "
|
||||
"d'installation, :file:`setup.py`, contenant le code ci-dessus, et exécuter "
|
||||
"cette commande depuis un terminal :"
|
||||
"cette commande depuis un terminal ::"
|
||||
|
||||
#: distutils/introduction.rst:89
|
||||
msgid ""
|
||||
|
@ -186,7 +186,7 @@ msgid ""
|
|||
"Accessories`) and change the command to::"
|
||||
msgstr ""
|
||||
"Pour Windows, ouvrez une invite de commande (:menuselection:`Démarrer --> "
|
||||
"Accessoires`) et changez la commande en :"
|
||||
"Accessoires`) et changez la commande en ::"
|
||||
|
||||
#: distutils/introduction.rst:94
|
||||
msgid ""
|
||||
|
@ -210,7 +210,7 @@ msgstr ""
|
|||
"Si un utilisateur final souhaite installer votre module :mod:`foo`, tout ce "
|
||||
"qu'il aura à faire est de télécharger le fichier :file:`foo-1.0.tar.gz` (ou :"
|
||||
"file:`.zip`), le décompresser et ---depuis le répertoire :file:`foo-1.0`--- "
|
||||
"exécuter :"
|
||||
"exécuter ::"
|
||||
|
||||
#: distutils/introduction.rst:105
|
||||
msgid ""
|
||||
|
@ -248,7 +248,7 @@ msgstr ""
|
|||
"la commande :command:`bdist_rpm`, Solaris :program:`pkgtool` (:command:"
|
||||
"`bdist_pkgtool`), et HP-UX :program:`swinstall` (:command:`bdist_sdux`). Par "
|
||||
"exemple, la commande suivante va créer un fichier RPM appelé :file:`foo-1.0."
|
||||
"noarch.rpm`::"
|
||||
"noarch.rpm` ::"
|
||||
|
||||
#: distutils/introduction.rst:123
|
||||
msgid ""
|
||||
|
@ -266,7 +266,7 @@ msgid ""
|
|||
"running ::"
|
||||
msgstr ""
|
||||
"Vous pouvez trouver quelles sont les formats de distribution disponibles à "
|
||||
"n'importe quel moment en exécutant :"
|
||||
"n'importe quel moment en exécutant ::"
|
||||
|
||||
#: distutils/introduction.rst:136
|
||||
msgid "General Python terminology"
|
||||
|
@ -282,7 +282,7 @@ msgstr ""
|
|||
"Si vous lisez ce document, vous avez probablement une bonne idée de ce que "
|
||||
"sont les modules, extensions, etc. Néanmoins, juste pour être sur que tout "
|
||||
"le monde opère depuis un point d'entrée commun, nous reprécisons le "
|
||||
"glossaire suivant des termes Python communs :"
|
||||
"glossaire suivant des termes Python communs :"
|
||||
|
||||
#: distutils/introduction.rst:146
|
||||
msgid "module"
|
||||
|
@ -380,7 +380,7 @@ msgid ""
|
|||
"Python modules using the Distutils:"
|
||||
msgstr ""
|
||||
"Les termes suivant s'appliquent plus spécifiquement au domaine de la "
|
||||
"distribution de modules Python en utilisant les Distutils :"
|
||||
"distribution de modules Python en utilisant les Distutils :"
|
||||
|
||||
#: distutils/introduction.rst:190
|
||||
msgid "module distribution"
|
||||
|
@ -453,7 +453,7 @@ msgstr ""
|
|||
#~ "voulez rendre les choses faciles pour les autres utilisateurs Windows, "
|
||||
#~ "vous pouvez créer un installateur exécutable (le mode de distribution le "
|
||||
#~ "plus approprié pour cette plateforme) avec la commande :command:"
|
||||
#~ "`bdist_wininst`. Par exemple :"
|
||||
#~ "`bdist_wininst`. Par exemple ::"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "will create an executable installer, :file:`foo-1.0.win32.exe`, in the "
|
||||
|
|
|
@ -67,7 +67,7 @@ msgstr ""
|
|||
"entière de telle sorte que les utilisateurs de Python 1.5.2 puissent les "
|
||||
"utiliser pour installer d'autres modules. Le propre script ``setup.py`` des "
|
||||
"*Distutils* montré ici est utilisé pour installer le paquet dans Python "
|
||||
"1.5.2). ::"
|
||||
"1.5.2). ::"
|
||||
|
||||
#: distutils/setupscript.rst:37
|
||||
msgid ""
|
||||
|
@ -170,7 +170,7 @@ msgstr ""
|
|||
"sous :file:`lib`, de telle sorte que les modules dans le « paquet "
|
||||
"racine » (c'est-à-dire dans aucun paquet du tout) sont dans :file:`lib`, les "
|
||||
"modules dans le paquet :mod:`foo` sont dans :file:`lib/foo`, et ainsi de "
|
||||
"suite. Alors, vous pouvez mettre ::"
|
||||
"suite. Alors, vous pouvez mettre ::"
|
||||
|
||||
#: distutils/setupscript.rst:88
|
||||
msgid ""
|
||||
|
@ -194,7 +194,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Une autre convention possible est de mettre le paquet :mod:`foo` directement "
|
||||
"dans :file:`lib`, le paquet :mod:`foo.bar` dans :file:`lib/bar`, etc. Cela "
|
||||
"s'écrirait ainsi dans le script ``setup.py`` : ::"
|
||||
"s'écrirait ainsi dans le script ``setup.py`` ::"
|
||||
|
||||
#: distutils/setupscript.rst:99
|
||||
msgid ""
|
||||
|
@ -314,11 +314,11 @@ msgid ""
|
|||
"example, ::"
|
||||
msgstr ""
|
||||
"Le premier argument du constructeur :class:`~distutils.core.Extension` est "
|
||||
"toujours le nom de l'extension, incluant tout nom de paquet. Par exemple ::"
|
||||
"toujours le nom de l'extension, incluant tout nom de paquet. Par exemple ::"
|
||||
|
||||
#: distutils/setupscript.rst:176
|
||||
msgid "describes an extension that lives in the root package, while ::"
|
||||
msgstr "décrit une extension qui se situe dans le paquet racine, tandis que ::"
|
||||
msgstr "décrit une extension qui se situe dans le paquet racine, tandis que ::"
|
||||
|
||||
#: distutils/setupscript.rst:180
|
||||
msgid ""
|
||||
|
@ -341,7 +341,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Si vous avez un certain nombre d'extensions toutes dans le même paquet (ou "
|
||||
"toutes sous le même paquet de base), utilisez l'argument nommé "
|
||||
"``ext_package`` de :func:`setup`. Par exemple ::"
|
||||
"``ext_package`` de :func:`setup`. Par exemple ::"
|
||||
|
||||
#: distutils/setupscript.rst:195
|
||||
msgid ""
|
||||
|
@ -442,7 +442,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Ici, vous pouvez définir le chemin absolu des répertoires ; si vous savez "
|
||||
"que votre extension sera compilée sur un système Unix avec ``X11R6`` "
|
||||
"installé dans :file:`/usr`, vous pouvez vous en sortir avec ::"
|
||||
"installé dans :file:`/usr`, vous pouvez vous en sortir avec ::"
|
||||
|
||||
#: distutils/setupscript.rst:254
|
||||
msgid ""
|
||||
|
@ -450,7 +450,7 @@ msgid ""
|
|||
"your code: it's probably better to write C code like ::"
|
||||
msgstr ""
|
||||
"Il convient d'éviter ce type d'utilisation non portable si vous envisagez de "
|
||||
"distribuer votre code : Il est probablement mieux d'écrire du code C comme ::"
|
||||
"distribuer votre code : Il est probablement mieux d'écrire du code C comme ::"
|
||||
|
||||
#: distutils/setupscript.rst:259
|
||||
msgid ""
|
||||
|
@ -474,7 +474,7 @@ msgstr ""
|
|||
"répertoire :file:`include` de Python —\\ :file:`/usr/local/include/"
|
||||
"python1.5` dans ce cas-ci — est toujours inclus dans le chemin de recherche "
|
||||
"quand vous construisez des extensions Python, la meilleure approche est "
|
||||
"d'écrire du code C comme ::"
|
||||
"d'écrire du code C comme ::"
|
||||
|
||||
#: distutils/setupscript.rst:271
|
||||
msgid ""
|
||||
|
@ -551,7 +551,7 @@ msgid ""
|
|||
"standard library search path on target systems ::"
|
||||
msgstr ""
|
||||
"Par exemple, pour lier des bibliothèques que l'on sait dans le chemin des "
|
||||
"bibliothèques standards des systèmes cibles ::"
|
||||
"bibliothèques standards des systèmes cibles ::"
|
||||
|
||||
#: distutils/setupscript.rst:323
|
||||
msgid ""
|
||||
|
|
|
@ -428,7 +428,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Voici le manifeste modèle de Distutils, suivons comment la commande :command:"
|
||||
"`sdist` construit la liste des fichiers à inclure dans la distribution "
|
||||
"source de Distutils."
|
||||
"source de Distutils :"
|
||||
|
||||
#: distutils/sourcedist.rst:185
|
||||
msgid ""
|
||||
|
|
|
@ -41,7 +41,7 @@ msgstr ""
|
|||
|
||||
#: extending/building.rst:16
|
||||
msgid "The initialization function has the signature:"
|
||||
msgstr "La fonction d'initialisation doit avoir le prototype :"
|
||||
msgstr "La fonction d'initialisation doit avoir le prototype :"
|
||||
|
||||
#: extending/building.rst:20
|
||||
#, fuzzy
|
||||
|
@ -107,7 +107,7 @@ msgid ""
|
|||
"plain Python file, which, in the most simple case, could look like this:"
|
||||
msgstr ""
|
||||
"Un paquet *distutils* contient un script :file:`setup.py`. C'est un simple "
|
||||
"fichier Python, ressemblant dans la plupart des cas à :"
|
||||
"fichier Python, ressemblant dans la plupart des cas à :"
|
||||
|
||||
#: extending/building.rst:73
|
||||
msgid "With this :file:`setup.py`, and a file :file:`demo.c`, running ::"
|
||||
|
|
|
@ -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: 2019-12-25 17:24+0100\n"
|
||||
"PO-Revision-Date: 2023-02-16 16:53+0100\n"
|
||||
"Last-Translator: Antoine <antoine.venier@hotmail.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 2.0.6\n"
|
||||
"X-Generator: Poedit 2.3\n"
|
||||
|
||||
#: extending/embedding.rst:8
|
||||
msgid "Embedding Python in Another Application"
|
||||
|
@ -421,13 +421,12 @@ msgstr ""
|
|||
"compiler :"
|
||||
|
||||
#: extending/embedding.rst:304
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"``pythonX.Y-config --ldflags --embed`` will give you the recommended flags "
|
||||
"when linking:"
|
||||
msgstr ""
|
||||
"``pythonX.Y-config --ldflags`` vous donnera les drapeaux recommandés lors de "
|
||||
"l'édition de lien :"
|
||||
"``pythonX.Y-config --ldflags --embed`` vous donnera les drapeaux recommandés "
|
||||
"lors de l'édition de lien :"
|
||||
|
||||
#: extending/embedding.rst:313
|
||||
msgid ""
|
||||
|
|
|
@ -911,7 +911,7 @@ msgstr ""
|
|||
"Vous pouvez également appeler une fonction avec des arguments nommés en "
|
||||
"utilisant :c:func:`PyObject_Call`, qui accepte les arguments et les "
|
||||
"arguments nommés. Comme dans l'exemple ci-dessus, nous utilisons :c:func:"
|
||||
"`Py_BuildValue` pour construire le dictionnaire. ::"
|
||||
"`Py_BuildValue` pour construire le dictionnaire. ::"
|
||||
|
||||
#: extending/extending.rst:628
|
||||
msgid "Extracting Parameters in Extension Functions"
|
||||
|
@ -1728,7 +1728,7 @@ msgstr "La fonction :c:func:`spam_system` est modifiée de manière simple ::"
|
|||
|
||||
#: extending/extending.rst:1241
|
||||
msgid "In the beginning of the module, right after the line ::"
|
||||
msgstr "Au début du module, immédiatement après la ligne ::"
|
||||
msgstr "Au début du module, immédiatement après la ligne ::"
|
||||
|
||||
#: extending/extending.rst:1245
|
||||
msgid "two more lines must be added::"
|
||||
|
|
|
@ -167,7 +167,7 @@ msgstr ""
|
|||
|
||||
#: extending/newtypes_tutorial.rst:88
|
||||
msgid "The second bit is the definition of the type object. ::"
|
||||
msgstr "La deuxième partie est la définition de l'objet type ::"
|
||||
msgstr "La deuxième partie est la définition de l'objet type ::"
|
||||
|
||||
#: extending/newtypes_tutorial.rst:101
|
||||
msgid ""
|
||||
|
@ -202,7 +202,7 @@ msgid ""
|
|||
"mentioned above. ::"
|
||||
msgstr ""
|
||||
"Cette ligne, obligatoire, initialise le champ ``ob_base`` mentionné "
|
||||
"précédemment."
|
||||
"précédemment. ::"
|
||||
|
||||
#: extending/newtypes_tutorial.rst:119
|
||||
msgid ""
|
||||
|
@ -298,7 +298,7 @@ msgstr ""
|
|||
"c:member:`~PyTypeObject.tp_new`, qui est l'équivalent de la méthode Python :"
|
||||
"meth:`__new__`, mais elle a besoin d'être spécifiée explicitement. Dans ce "
|
||||
"cas, on se contente de l'implémentation par défaut fournie par la fonction :"
|
||||
"c:func:`PyType_GenericNew` de l'API."
|
||||
"c:func:`PyType_GenericNew` de l'API. ::"
|
||||
|
||||
#: extending/newtypes_tutorial.rst:173
|
||||
msgid ""
|
||||
|
|
|
@ -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: 2022-11-20 22:13+0100\n"
|
||||
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
|
||||
"PO-Revision-Date: 2023-03-26 17:18+0200\n"
|
||||
"Last-Translator: Mathieu Dupuy\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.4.2\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
|
||||
#: faq/design.rst:3
|
||||
msgid "Design and History FAQ"
|
||||
|
@ -433,7 +433,7 @@ msgstr ""
|
|||
"une séquence de joindre ses membres avec une constante de chaîne ? ». "
|
||||
"Malheureusement, ce n'est pas ça. Allez savoir, il semble être bien moins "
|
||||
"difficile de comprendre ce qui se passe avec :meth:`~str.split` en tant que "
|
||||
"méthode de chaîne, puisque dans ce cas il est facile de voir que ::"
|
||||
"méthode de chaîne, puisque dans ce cas il est facile de voir que ::"
|
||||
|
||||
#: faq/design.rst:222
|
||||
msgid ""
|
||||
|
@ -594,7 +594,6 @@ 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 "
|
||||
|
@ -616,18 +615,16 @@ msgstr ""
|
|||
"Python peut-il être compilé en code machine, en C ou dans un autre langage ?"
|
||||
|
||||
#: faq/design.rst:324
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"`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."
|
||||
msgstr ""
|
||||
"`Cython <http://cython.org/>`_ compile une version modifiée de Python avec "
|
||||
"des annotations optionnelles en extensions C. `Nuitka <http://www.nuitka.net/"
|
||||
">`_ est un nouveau compilateur de Python vers C++, visant à supporter le "
|
||||
"langage Python entièrement. Pour compiler en Java, vous pouvez regarder `VOC "
|
||||
"<https://voc.readthedocs.io>`_."
|
||||
"`Cython <https://cython.org/>`_ compile une version modifiée de Python avec "
|
||||
"des annotations optionnelles en extensions C. `Nuitka <https://www.nuitka."
|
||||
"net/>`_ est un compilateur en devenir de Python vers C++, visant à supporter "
|
||||
"le langage Python dans son entièreté."
|
||||
|
||||
#: faq/design.rst:331
|
||||
msgid "How does Python manage memory?"
|
||||
|
@ -653,7 +650,6 @@ msgstr ""
|
|||
"d'obtenir des statistiques de débogage et ajuster ses paramètres."
|
||||
|
||||
#: faq/design.rst:341
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Other implementations (such as `Jython <https://www.jython.org>`_ or `PyPy "
|
||||
"<https://www.pypy.org>`_), however, can rely on a different mechanism such "
|
||||
|
@ -661,8 +657,8 @@ msgid ""
|
|||
"porting problems if your Python code depends on the behavior of the "
|
||||
"reference counting implementation."
|
||||
msgstr ""
|
||||
"Cependant, d'autres implémentations (par exemple `Jython <http://www.jython."
|
||||
"org>`_ ou `PyPy <http://www.pypy.org>`_) peuvent compter sur un mécanisme "
|
||||
"Cependant, d'autres implémentations (par exemple `Jython <https://www.jython."
|
||||
"org>`_ ou `PyPy <https://www.pypy.org>`_) peuvent compter sur un mécanisme "
|
||||
"différent comme un véritable ramasse-miettes. Cette différence peut causer "
|
||||
"de subtils problèmes de portabilité si votre code Python dépend du "
|
||||
"comportement de l'implémentation du compteur de références."
|
||||
|
@ -1283,7 +1279,7 @@ 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 ::"
|
||||
"essayez par exemple l'un de ceux-ci ::"
|
||||
|
||||
#: faq/design.rst:653
|
||||
msgid "Why doesn't Python have a \"with\" statement for attribute assignments?"
|
||||
|
@ -1408,7 +1404,7 @@ msgstr ""
|
|||
|
||||
#: faq/design.rst:725
|
||||
msgid "versus ::"
|
||||
msgstr "et cela ::"
|
||||
msgstr "et cela ::"
|
||||
|
||||
#: faq/design.rst:730
|
||||
msgid ""
|
||||
|
|
|
@ -279,12 +279,12 @@ msgstr ""
|
|||
#: faq/extending.rst:149
|
||||
msgid "The easiest way to do this is to use the :class:`io.StringIO` class:"
|
||||
msgstr ""
|
||||
"La façon la plus simple consiste à utiliser la classe :class:`io.StringIO` :"
|
||||
"La façon la plus simple consiste à utiliser la classe :class:`io.StringIO` :"
|
||||
|
||||
#: faq/extending.rst:161
|
||||
msgid "A custom object to do the same would look like this:"
|
||||
msgstr ""
|
||||
"Le code d'un objet à la fonctionnalité similaire ressemblerait à ceci :"
|
||||
"Le code d'un objet à la fonctionnalité similaire ressemblerait à ceci :"
|
||||
|
||||
#: faq/extending.rst:182
|
||||
msgid "How do I access a module written in Python from C?"
|
||||
|
@ -382,11 +382,11 @@ msgstr ""
|
|||
#: faq/extending.rst:229
|
||||
msgid "In your ``.gdbinit`` file (or interactively), add the command:"
|
||||
msgstr ""
|
||||
"Dans votre fichier ``.gdbinit`` (ou manuellement), ajoutez la commande :"
|
||||
"Dans votre fichier ``.gdbinit`` (ou manuellement), ajoutez la commande :"
|
||||
|
||||
#: faq/extending.rst:235
|
||||
msgid "Then, when you run GDB:"
|
||||
msgstr "Ensuite, lorsque vous exécutez GDB :"
|
||||
msgstr "Ensuite, lorsque vous exécutez GDB :"
|
||||
|
||||
#: faq/extending.rst:247
|
||||
msgid ""
|
||||
|
|
|
@ -6,14 +6,14 @@ msgstr ""
|
|||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-02-12 11:56+0100\n"
|
||||
"PO-Revision-Date: 2021-12-16 02:40+0100\n"
|
||||
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
|
||||
"PO-Revision-Date: 2023-03-27 16:40+0200\n"
|
||||
"Last-Translator: Mathieu Dupuy\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.2.2\n"
|
||||
|
||||
#: faq/general.rst:5
|
||||
msgid "General Python FAQ"
|
||||
|
@ -152,7 +152,7 @@ msgid ""
|
|||
"Rossum:"
|
||||
msgstr ""
|
||||
"Voici un *très* bref résumé de comment tout a commencé, écrit par Guido van "
|
||||
"Rossum (puis traduit en français) :"
|
||||
"Rossum (puis traduit en français) :"
|
||||
|
||||
#: faq/general.rst:71
|
||||
msgid ""
|
||||
|
@ -255,7 +255,6 @@ msgstr ""
|
|||
"utilisé pour pallier à différents problèmes."
|
||||
|
||||
#: faq/general.rst:114
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"The language comes with a large standard library that covers areas such as "
|
||||
"string processing (regular expressions, Unicode, calculating differences "
|
||||
|
@ -270,7 +269,7 @@ msgstr ""
|
|||
"Le langage vient avec une bibliothèque standard importante qui couvre des "
|
||||
"domaines tels que le traitement des chaînes de caractères (expressions "
|
||||
"régulières, Unicode, calcul de différences entre les fichiers), les "
|
||||
"protocoles Internet (HTTP, FTP, SMTP, XML-RPC, POP, IMAP, script CGI), "
|
||||
"protocoles internet (HTTP, FTP, SMTP, XML-RPC, POP, IMAP, script CGI), "
|
||||
"ingénierie logicielle (tests unitaires, enregistrement, analyse de code "
|
||||
"Python), et interfaces pour systèmes d'exploitation (appels système, système "
|
||||
"de fichiers, connecteurs TCP/IP). Regardez la table des matières :ref:"
|
||||
|
@ -427,7 +426,6 @@ msgstr ""
|
|||
"sont aussi disponibles à https://docs.python.org/3/download.html."
|
||||
|
||||
#: faq/general.rst:190
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"The documentation is written in reStructuredText and processed by `the "
|
||||
"Sphinx documentation tool <https://www.sphinx-doc.org/>`__. The "
|
||||
|
@ -435,7 +433,7 @@ msgid ""
|
|||
"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 "
|
||||
"l'outil de documentation `Sphinx <https://sphinx-doc.org/>`__. La source du "
|
||||
"*reStructuredText* pour la documentation constitue une partie des sources de "
|
||||
"Python."
|
||||
|
||||
|
@ -534,13 +532,12 @@ 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:239
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"To report a bug or submit a patch, use the issue tracker at https://github."
|
||||
"com/python/cpython/issues."
|
||||
msgstr ""
|
||||
"Pour reporter un bogue ou soumettre un correctif, merci d'utiliser https://"
|
||||
"bugs.python.org/."
|
||||
"Pour signaler un bogue ou soumettre un correctif, utilisez le système de "
|
||||
"suivi des problèmes à l'adresse https://github.com/python/cpython/issues."
|
||||
|
||||
#: faq/general.rst:242
|
||||
msgid ""
|
||||
|
@ -563,13 +560,12 @@ msgstr ""
|
|||
"Python."
|
||||
|
||||
#: faq/general.rst:251
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"The `very first article <https://ir.cwi.nl/pub/18204>`_ about Python was "
|
||||
"written in 1991 and is now quite outdated."
|
||||
msgstr ""
|
||||
"Le tout premier article à propos de Python a été écrit en 1991 et est "
|
||||
"maintenant obsolète."
|
||||
"Le `tout premier article <https://ir.cwi.nl/pub/18204>`_ sur Python a été "
|
||||
"écrit en 1991 et est aujourd'hui assez dépassé."
|
||||
|
||||
#: faq/general.rst:254
|
||||
msgid ""
|
||||
|
@ -607,14 +603,13 @@ 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
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"The Python project's infrastructure is located all over the world and is "
|
||||
"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://"
|
||||
"gérée par l'équipe de l'infrastructure Python. Plus de détails `ici <https://"
|
||||
"infra.psf.io>`__."
|
||||
|
||||
#: faq/general.rst:277
|
||||
|
@ -679,7 +674,6 @@ msgstr ""
|
|||
"versions correctives."
|
||||
|
||||
#: faq/general.rst:309
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"The latest stable releases can always be found on the `Python download page "
|
||||
"<https://www.python.org/downloads/>`_. There are two production-ready "
|
||||
|
@ -692,7 +686,7 @@ msgstr ""
|
|||
"deux versions stables de Python : 2.x et 3.x, mais seule la version 3 est "
|
||||
"recommandée, c'est celle qui est compatible avec les bibliothèques les plus "
|
||||
"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/>`_."
|
||||
"désormais plus maintenu <https://peps.python.org/pep-0373/>`_."
|
||||
|
||||
#: faq/general.rst:316
|
||||
msgid "How many people are using Python?"
|
||||
|
@ -743,7 +737,6 @@ msgstr ""
|
|||
"entreprises divers."
|
||||
|
||||
#: faq/general.rst:337
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"High-profile Python projects include `the Mailman mailing list manager "
|
||||
"<https://www.list.org>`_ and `the Zope application server <https://www.zope."
|
||||
|
@ -752,9 +745,9 @@ msgid ""
|
|||
"administration software in Python. Companies that use Python internally "
|
||||
"include Google, Yahoo, and Lucasfilm Ltd."
|
||||
msgstr ""
|
||||
"Les projets Python à grande visibilité incluent `Mailman mailing list "
|
||||
"manager <http://www.list.org>`_ et `l'application serveur Zope <http://www."
|
||||
"zope.org>`_. Plusieurs distributions Linux, notamment `Red Hat <https://www."
|
||||
"Les projets Python les plus connus incluent `Mailman mailing list manager "
|
||||
"<https://www.list.org>`_ et `l'application serveur Zope <https://www.zope."
|
||||
"org>`_. Plusieurs distributions Linux, notamment `Red Hat <https://www."
|
||||
"redhat.com>`_, qui a écrit tout ou partie de son installateur et de son "
|
||||
"logiciel d'administration système en Python. Les entreprises qui utilisent "
|
||||
"Python en interne comprennent Google, Yahoo, et Lucasfilm Ltd."
|
||||
|
@ -764,7 +757,6 @@ 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
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"See https://peps.python.org/ for the Python Enhancement Proposals (PEPs). "
|
||||
"PEPs are design documents describing a suggested new feature for Python, "
|
||||
|
@ -773,8 +765,8 @@ msgid ""
|
|||
"been publicly released yet."
|
||||
msgstr ""
|
||||
"Regardez les propositions d'amélioration de Python (« *Python Enhancement "
|
||||
"Proposals* », ou *PEP*) sur https://www.python.org/dev/peps/. Les PEP sont "
|
||||
"des documents techniques qui décrivent une nouvelle fonctionnalité qui a été "
|
||||
"Proposals* », ou *PEP*) sur https://peps.python.org/. Les PEP sont des "
|
||||
"documents techniques qui décrivent une nouvelle fonctionnalité qui a été "
|
||||
"suggérée pour Python, en fournissant une spécification technique concise et "
|
||||
"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."
|
||||
|
@ -918,7 +910,6 @@ msgstr ""
|
|||
"ils travaillent."
|
||||
|
||||
#: faq/general.rst:437
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"There are also good IDEs for Python. IDLE is a cross-platform IDE for "
|
||||
"Python that is written in Python using Tkinter. Emacs users will be happy to "
|
||||
|
@ -930,13 +921,12 @@ msgid ""
|
|||
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 "
|
||||
"en utilisant Tkinter. *PythonWin* est un IDE spécifique à Windows. Les "
|
||||
"utilisateurs d'Emacs seront heureux d'apprendre qu'il y a un très bon mode "
|
||||
"Python pour Emacs. Tous ces environnements de développement intégrés "
|
||||
"fournissent la coloration syntaxique, l'auto-indentation, et l'accès à "
|
||||
"l'interpréteur interactif durant le codage. Consultez `le wiki Python "
|
||||
"<https://wiki.python.org/moin/PythonEditors>`_ pour une liste complète des "
|
||||
"environnements de développement intégrés."
|
||||
"en utilisant Tkinter. Les utilisateurs d'Emacs seront heureux d'apprendre "
|
||||
"qu'il y a un très bon mode Python pour Emacs. Tous ces environnements de "
|
||||
"développement intégrés fournissent la coloration syntaxique, l'auto-"
|
||||
"indentation, et l'accès à l'interpréteur interactif durant le codage. "
|
||||
"Consultez `le wiki Python <https://wiki.python.org/moin/PythonEditors>`_ "
|
||||
"pour une liste complète des environnements de développement intégrés."
|
||||
|
||||
#: faq/general.rst:445
|
||||
msgid ""
|
||||
|
|
|
@ -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: 2021-12-16 02:34+0100\n"
|
||||
"PO-Revision-Date: 2023-05-23 21:32+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"
|
||||
|
||||
#: faq/gui.rst:5
|
||||
msgid "Graphic User Interface FAQ"
|
||||
|
@ -93,7 +93,6 @@ 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 "
|
||||
|
@ -103,7 +102,7 @@ msgstr ""
|
|||
"Pour obtenir des applications vraiment autonomes, les scripts *Tcl* qui "
|
||||
"forment la bibliothèque doivent également être intégrés dans l'application. "
|
||||
"Un outil supportant cela est *SAM* (modules autonomes), qui fait partie de "
|
||||
"la distribution *Tix* (http://tix.sourceforge.net/)."
|
||||
"la distribution *Tix* (https://tix.sourceforge.net/)."
|
||||
|
||||
#: faq/gui.rst:54
|
||||
msgid ""
|
||||
|
|
|
@ -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: 2021-12-06 20:15+0100\n"
|
||||
"Last-Translator: Fipaddict <fipaddict@protonmail.com>\n"
|
||||
"PO-Revision-Date: 2023-03-27 18:03+0200\n"
|
||||
"Last-Translator: Mathieu Dupuy\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.2.2\n"
|
||||
|
||||
#: faq/library.rst:5
|
||||
msgid "Library and Extension FAQ"
|
||||
|
@ -127,7 +127,7 @@ msgid ""
|
|||
"to write ::"
|
||||
msgstr ""
|
||||
"Il y a plusieurs façons de remplir la seconde. La plus simple consiste à "
|
||||
"écrire au tout début du fichier ::"
|
||||
"écrire au tout début du fichier ::"
|
||||
|
||||
#: faq/library.rst:61
|
||||
msgid ""
|
||||
|
@ -175,7 +175,7 @@ msgid ""
|
|||
"However, you can fix that by adding ::"
|
||||
msgstr ""
|
||||
"Le léger inconvénient est que cela définit la variable *__doc__* du script. "
|
||||
"Cependant, il est possible de corriger cela en ajoutant ::"
|
||||
"Cependant, il est possible de corriger cela en ajoutant ::"
|
||||
|
||||
#: faq/library.rst:94
|
||||
msgid "Is there a curses/termcap package for Python?"
|
||||
|
@ -232,7 +232,7 @@ msgid ""
|
|||
"wrong argument list. It is called as ::"
|
||||
msgstr ""
|
||||
"Le problème le plus courant est d'appeler le gestionnaire de signaux avec "
|
||||
"les mauvais arguments. Un gestionnaire est appelé de la façon suivante ::"
|
||||
"les mauvais arguments. Un gestionnaire est appelé de la façon suivante ::"
|
||||
|
||||
#: faq/library.rst:125
|
||||
msgid "so it should be declared with two parameters::"
|
||||
|
@ -286,7 +286,7 @@ msgstr ""
|
|||
#: faq/library.rst:152
|
||||
msgid "The \"global main logic\" of your program may be as simple as ::"
|
||||
msgstr ""
|
||||
"La « logique générale » d'un programme devrait être aussi simple que ::"
|
||||
"La « logique générale » d'un programme devrait être aussi simple que ::"
|
||||
|
||||
#: faq/library.rst:157
|
||||
msgid "at the bottom of the main module of your program."
|
||||
|
@ -337,7 +337,6 @@ 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 "
|
||||
|
@ -346,8 +345,8 @@ msgid ""
|
|||
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 à "
|
||||
"partir des *docstrings* à l'aide de `epydoc <http://epydoc.sourceforge.net/"
|
||||
">`_. `Sphinx <http://sphinx-doc.org>`_ peut également inclure du contenu "
|
||||
"partir des *docstrings* à l'aide de `epydoc <https://epydoc.sourceforge.net/"
|
||||
">`_. `Sphinx <https://sphinx-doc.org>`_ peut également inclure du contenu "
|
||||
"provenant de *docstrings*."
|
||||
|
||||
#: faq/library.rst:188
|
||||
|
@ -893,7 +892,7 @@ msgstr "Programmation réseau et Internet"
|
|||
|
||||
#: faq/library.rst:661
|
||||
msgid "What WWW tools are there for Python?"
|
||||
msgstr "Quels sont les outils Python dédiés à la Toile ?"
|
||||
msgstr "Quels sont les outils Python dédiés à au web ?"
|
||||
|
||||
#: faq/library.rst:663
|
||||
msgid ""
|
||||
|
@ -903,7 +902,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Référez-vous aux chapitres intitulés :ref:`internet` et :ref:`netdata` dans "
|
||||
"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."
|
||||
"construire des applications web côté client comme côté serveur."
|
||||
|
||||
#: faq/library.rst:669
|
||||
msgid ""
|
||||
|
@ -914,15 +913,14 @@ msgstr ""
|
|||
"l'adresse https://wiki.python.org/moin/WebProgramming\\ ."
|
||||
|
||||
#: faq/library.rst:672
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Cameron Laird maintains a useful set of pages about Python web technologies "
|
||||
"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."
|
||||
"technologies Python dédiées au web à l'adresse https://web.archive.org/"
|
||||
"web/20210224183619/http://phaseit.net/claird/comp.lang.python/web_python."
|
||||
|
||||
#: faq/library.rst:677
|
||||
msgid "How can I mimic CGI form submission (METHOD=POST)?"
|
||||
|
@ -933,8 +931,8 @@ 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?"
|
||||
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 ?"
|
||||
"J'aimerais récupérer la page web d'un envoi de formulaire via POST. Existe-t-"
|
||||
"il déjà du code qui pourrait m'aider à le faire facilement ?"
|
||||
|
||||
#: faq/library.rst:682
|
||||
msgid "Yes. Here's a simple example that uses :mod:`urllib.request`::"
|
||||
|
@ -964,7 +962,7 @@ msgid ""
|
|||
"You can find a collection of useful links on the `Web Programming wiki page "
|
||||
"<https://wiki.python.org/moin/WebProgramming>`_."
|
||||
msgstr ""
|
||||
"La `page wiki de la programmation Toile <https://wiki.python.org/moin/"
|
||||
"La `page wiki de la programmation web <https://wiki.python.org/moin/"
|
||||
"WebProgramming>`_ (en anglais) répertorie un ensemble de liens pertinents."
|
||||
|
||||
#: faq/library.rst:718
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2023-04-14 13:19+0200\n"
|
||||
"PO-Revision-Date: 2022-11-20 22:12+0100\n"
|
||||
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -993,7 +993,7 @@ msgstr "Ou en utilisant un objet appelable ::"
|
|||
|
||||
#: faq/programming.rst:598
|
||||
msgid "In both cases, ::"
|
||||
msgstr "Dans les deux cas ::"
|
||||
msgstr "Dans les deux cas ::"
|
||||
|
||||
#: faq/programming.rst:602
|
||||
msgid "gives a callable object where ``taxes(10e6) == 0.3 * 10e6 + 2``."
|
||||
|
@ -1326,7 +1326,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Essayer d'utiliser l'opérateur d'accès à un attribut sur un entier littéral "
|
||||
"conduit à une erreur de syntaxe car le point est compris comme un séparateur "
|
||||
"décimal en notation anglo-saxonne :"
|
||||
"décimal en notation anglo-saxonne ::"
|
||||
|
||||
#: faq/programming.rst:859
|
||||
msgid ""
|
||||
|
@ -1906,7 +1906,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Si tous les éléments de la liste peuvent être utilisés comme des clés de "
|
||||
"dictionnaire (c'est-à-dire, qu'elles sont toutes :term:`hachables "
|
||||
"<hashable>`) ceci est souvent plus rapide ::"
|
||||
"<hashable>`) ceci est souvent plus rapide ::"
|
||||
|
||||
#: faq/programming.rst:1225
|
||||
msgid ""
|
||||
|
@ -1930,7 +1930,7 @@ msgstr ""
|
|||
"Comme pour supprimer les doublons, il est possible d’itérer explicitement à "
|
||||
"l’envers avec une condition de suppression. Cependant, il est plus facile et "
|
||||
"plus rapide d’utiliser le remplacement des tranches par une itération avant, "
|
||||
"implicite ou explicite. Voici trois variantes. ::"
|
||||
"implicite ou explicite. Voici trois variantes ::"
|
||||
|
||||
#: faq/programming.rst:1241
|
||||
msgid "The list comprehension may be fastest."
|
||||
|
@ -2006,8 +2006,7 @@ msgstr "Elle semble correcte si on l'affiche :"
|
|||
#: faq/programming.rst:1290
|
||||
msgid "But when you assign a value, it shows up in multiple places:"
|
||||
msgstr ""
|
||||
"Mais quand vous affectez une valeur, celle-ci apparaît à plusieurs "
|
||||
"endroits ::"
|
||||
"Mais quand vous affectez une valeur, celle-ci apparaît à plusieurs endroits :"
|
||||
|
||||
#: faq/programming.rst:1302
|
||||
msgid ""
|
||||
|
@ -2221,7 +2220,7 @@ msgid ""
|
|||
"pick out the element you want. ::"
|
||||
msgstr ""
|
||||
"Fusionnez-les dans un itérateur de *n*-uplets, ordonnez la liste obtenue, "
|
||||
"puis choisissez l'élément que vous voulez ::"
|
||||
"puis choisissez l'élément que vous voulez ::"
|
||||
|
||||
#: faq/programming.rst:1461
|
||||
msgid "Objects"
|
||||
|
@ -2578,7 +2577,7 @@ msgstr ""
|
|||
msgid "You could also try a variable-length argument list, e.g. ::"
|
||||
msgstr ""
|
||||
"Vous pouvez aussi utiliser une liste d'arguments de longueur variable, par "
|
||||
"exemple ::"
|
||||
"exemple ::"
|
||||
|
||||
#: faq/programming.rst:1732
|
||||
msgid "The same approach works for all method definitions."
|
||||
|
@ -2869,7 +2868,7 @@ msgstr ""
|
|||
"peu de subtilité lorsque ``None`` est une valeur acceptable pour le "
|
||||
"paramètre. Dans ces cas, il faut créer un objet singleton dit "
|
||||
"« sentinelle », distinct de toute valeur acceptable. Voici par exemple "
|
||||
"comment écrire une méthode qui émule :meth:`dict.pop` :"
|
||||
"comment écrire une méthode qui émule :meth:`dict.pop` ::"
|
||||
|
||||
#: faq/programming.rst:1901
|
||||
msgid ""
|
||||
|
@ -2959,10 +2958,11 @@ msgstr ""
|
|||
"instances, sans limite de nombre."
|
||||
|
||||
#: faq/programming.rst:1982
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"The *lru_cache* approach works with methods that have hashable arguments. "
|
||||
"It creates a reference to the instance unless special efforts are made to "
|
||||
"pass in weak references."
|
||||
"The *lru_cache* approach works with methods that have :term:`hashable` "
|
||||
"arguments. It creates a reference to the instance unless special efforts "
|
||||
"are made to pass in weak references."
|
||||
msgstr ""
|
||||
"La fonction ``lru_cache`` s'applique quant à elle aux méthodes dont les "
|
||||
"arguments sont hachables. Elle crée une référence forte à l'instance, sauf à "
|
||||
|
@ -3322,7 +3322,7 @@ msgid ""
|
|||
"containing statements like ::"
|
||||
msgstr ""
|
||||
"Attention, cette technique ne marche pas systématiquement. En particulier, "
|
||||
"les modules qui contiennent des instructions comme ::"
|
||||
"les modules qui contiennent des instructions comme ::"
|
||||
|
||||
#: faq/programming.rst:2197
|
||||
msgid ""
|
||||
|
@ -3371,7 +3371,7 @@ msgstr ""
|
|||
#~ msgstr ""
|
||||
#~ "Bien évidemment, *freeze* nécessite un compilateur C. Il existe d'autres "
|
||||
#~ "outils qui peuvent s'en passer. Un de ceux-ci est py2exe de Thomas Heller "
|
||||
#~ "(pour Windows uniquement) disponible sur"
|
||||
#~ "(pour Windows uniquement) disponible sur :"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Pydb is a version of the standard Python debugger pdb, modified for use "
|
||||
|
|
|
@ -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: 2022-05-27 12:17+0200\n"
|
||||
"PO-Revision-Date: 2023-03-26 11:57+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.1\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
|
||||
#: faq/windows.rst:9
|
||||
msgid "Python on Windows FAQ"
|
||||
|
@ -60,7 +60,7 @@ msgid ""
|
|||
"you might just as easily see something like:"
|
||||
msgstr ""
|
||||
"La lettre peut être différente, et il peut y avoir d'autres choses à la "
|
||||
"suite, alors il se peut que ça ressemble également à ça :"
|
||||
"suite, alors il se peut que ça ressemble également à ça :"
|
||||
|
||||
#: faq/windows.rst:46
|
||||
msgid ""
|
||||
|
@ -286,10 +286,9 @@ msgid ""
|
|||
"follows:"
|
||||
msgstr ""
|
||||
"L'intégration de l'interpréteur Python dans une application Windows peut se "
|
||||
"résumer comme suit :"
|
||||
"résumer comme suit :"
|
||||
|
||||
#: faq/windows.rst:170
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Do **not** build Python into your .exe file directly. On Windows, Python "
|
||||
"must be a DLL to handle importing modules that are themselves DLL's. (This "
|
||||
|
@ -339,7 +338,6 @@ msgstr ""
|
|||
"appelle des routines dans l'API C de Python."
|
||||
|
||||
#: faq/windows.rst:191
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"If you use SWIG, it is easy to create a Python \"extension module\" that "
|
||||
"will make the app's data and methods available to Python. SWIG will handle "
|
||||
|
@ -397,18 +395,17 @@ msgstr ""
|
|||
"construire *pythonNN.dll*."
|
||||
|
||||
#: faq/windows.rst:221
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Problem 1: The so-called \"Very High Level\" functions that take ``FILE *`` "
|
||||
"arguments will not work in a multi-compiler environment because each "
|
||||
"compiler's notion of a ``struct FILE`` will be different. From an "
|
||||
"implementation standpoint these are very low level functions."
|
||||
msgstr ""
|
||||
"Problème 1 : Les fonctions dites de \"Très Haut Niveau\" qui prennent les "
|
||||
"arguments FILE * ne fonctionneront pas dans un environnement multi-"
|
||||
"compilateur car chaque compilateur aura une notion différente de la "
|
||||
"structure de FILE. Du point de vue de l'implémentation, il s'agit de "
|
||||
"fonctions de très bas niveau."
|
||||
"Problème 1 : Les fonctions dites de « Très Haut Niveau » qui prennent les "
|
||||
"arguments ``FILE *`` ne fonctionneront pas dans un environnement multi-"
|
||||
"compilateur car chaque compilateur aura une notion différente de ``struct "
|
||||
"FILE``. Du point de vue de l'implémentation, il s'agit de fonctions de très "
|
||||
"bas niveau."
|
||||
|
||||
#: faq/windows.rst:226
|
||||
msgid ""
|
||||
|
@ -416,7 +413,7 @@ msgid ""
|
|||
"void functions:"
|
||||
msgstr ""
|
||||
"Problème 2 : SWIG génère le code suivant lors de la génération "
|
||||
"*d'encapsuleurs* pour annuler les fonctions :"
|
||||
"*d'encapsuleurs* pour annuler les fonctions :"
|
||||
|
||||
#: faq/windows.rst:235
|
||||
msgid ""
|
||||
|
@ -427,7 +424,7 @@ msgstr ""
|
|||
"Hélas, *Py_None* est une macro qui se développe en référence à une structure "
|
||||
"de données complexe appelée *_Py_NoneStruct* dans *pythonNN.dll*. Encore "
|
||||
"une fois, ce code échouera dans un environnement multi-compilateur. "
|
||||
"Remplacez ce code par :"
|
||||
"Remplacez ce code par :"
|
||||
|
||||
#: faq/windows.rst:243
|
||||
msgid ""
|
||||
|
@ -521,6 +518,8 @@ msgstr ""
|
|||
#: faq/windows.rst:281
|
||||
msgid "How do I solve the missing api-ms-win-crt-runtime-l1-1-0.dll error?"
|
||||
msgstr ""
|
||||
"Comment résoudre l'erreur « ``api-ms-win-crt-runtime-l1-1-0.dll`` "
|
||||
"manquante » ?"
|
||||
|
||||
#: faq/windows.rst:283
|
||||
msgid ""
|
||||
|
@ -530,6 +529,13 @@ msgid ""
|
|||
"issue, visit the `Microsoft support page <https://support.microsoft.com/en-"
|
||||
"us/help/3118401/>`_ for guidance on manually installing the C Runtime update."
|
||||
msgstr ""
|
||||
"Ce problème peut se produire avec Python 3.5 et les versions ultérieures "
|
||||
"lorsque vous utilisez Windows 8.1 ou une version antérieure sans que toutes "
|
||||
"les mises à jour aient été installées. Assurez-vous d'abord que votre "
|
||||
"système d'exploitation est pris en charge et qu'il est à jour, et si cela ne "
|
||||
"résout pas le problème, visitez la `page d’assistance de Microsoft <https://"
|
||||
"support.microsoft.com/en-us/help/3118401/>`_ pour obtenir des conseils sur "
|
||||
"l'installation manuelle de la mise à jour du *C Runtime*."
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Borland note: convert :file:`python{NN}.lib` to OMF format using Coff2Omf."
|
||||
|
|
90
glossary.po
90
glossary.po
|
@ -6,7 +6,7 @@ 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: 2022-12-11 16:33+0100\n"
|
||||
"PO-Revision-Date: 2023-03-19 13:06+0100\n"
|
||||
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
"Language: fr\n"
|
||||
|
@ -329,15 +329,14 @@ msgid "attribute"
|
|||
msgstr "attribut"
|
||||
|
||||
#: glossary.rst:139
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"A value associated with an object which is usually referenced by name using "
|
||||
"dotted expressions. For example, if an object *o* has an attribute *a* it "
|
||||
"would be referenced as *o.a*."
|
||||
msgstr ""
|
||||
"Valeur associée à un objet et désignée par son nom via une notation "
|
||||
"utilisant des points. Par exemple, si un objet *o* possède un attribut *a*, "
|
||||
"il sera référencé par *o.a*."
|
||||
"Valeur associée à un objet et habituellement désignée par son nom *via* une "
|
||||
"notation utilisant des points. Par exemple, si un objet *o* possède un "
|
||||
"attribut *a*, cet attribut est référencé par *o.a*."
|
||||
|
||||
#: glossary.rst:144
|
||||
msgid ""
|
||||
|
@ -347,10 +346,15 @@ msgid ""
|
|||
"using a dotted expression, and would instead need to be retrieved with :func:"
|
||||
"`getattr`."
|
||||
msgstr ""
|
||||
"Il est possible de donner à un objet un attribut dont le nom n'est pas un "
|
||||
"identifiant tel que défini pour les :ref:`identifiers`, par exemple en "
|
||||
"utilisant :func:`setattr`, si l'objet le permet. Un tel attribut ne sera pas "
|
||||
"accessible à l'aide d'une expression pointée et on devra y accéder avec :"
|
||||
"func:`getattr`."
|
||||
|
||||
#: glossary.rst:149
|
||||
msgid "awaitable"
|
||||
msgstr "awaitable"
|
||||
msgstr "attendable (*awaitable*)"
|
||||
|
||||
#: glossary.rst:151
|
||||
msgid ""
|
||||
|
@ -446,12 +450,13 @@ msgid ""
|
|||
"with binary data; these include compression, saving to a binary file, and "
|
||||
"sending over a socket."
|
||||
msgstr ""
|
||||
"Un objet gérant les :ref:`bufferobjects` et pouvant exporter un tampon "
|
||||
"(*buffer* en anglais) C-:term:`contiguous`. Cela inclut les objets :class:"
|
||||
"`bytes`, :class:`bytearray` et :class:`array.array`, ainsi que beaucoup "
|
||||
"d'objets :class:`memoryview`. Les objets bytes-compatibles peuvent être "
|
||||
"utilisés pour diverses opérations sur des données binaires, comme la "
|
||||
"compression, la sauvegarde dans un fichier binaire ou l'envoi sur le réseau."
|
||||
"Un objet gérant le :ref:`protocole tampon <bufferobjects>` et pouvant "
|
||||
"exporter un tampon (*buffer* en anglais) C-:term:`contigu <contiguous>`. "
|
||||
"Cela inclut les objets :class:`bytes`, :class:`bytearray` et :class:`array."
|
||||
"array`, ainsi que beaucoup d'objets :class:`memoryview`. Les objets octets-"
|
||||
"compatibles peuvent être utilisés pour diverses opérations sur des données "
|
||||
"binaires, comme la compression, la sauvegarde dans un fichier binaire ou "
|
||||
"l'envoi sur le réseau."
|
||||
|
||||
#: glossary.rst:190
|
||||
msgid ""
|
||||
|
@ -467,8 +472,8 @@ msgstr ""
|
|||
"like objects*. Par exemple, :class:`bytearray` ou une :class:`memoryview` "
|
||||
"d'un :class:`bytearray` en font partie. D'autres opérations nécessitent de "
|
||||
"travailler sur des données binaires stockées dans des objets immuables "
|
||||
"(*\"read-only bytes-like objects\"*), par exemple :class:`bytes` ou :class:"
|
||||
"`memoryview` d'un objet :class:`byte`."
|
||||
"(« *objets octets-compatibles en lecture seule* »), par exemple des :class:"
|
||||
"`bytes` ou des :class:`memoryview` d'un objet :class:`bytes`."
|
||||
|
||||
#: glossary.rst:198
|
||||
msgid "bytecode"
|
||||
|
@ -504,15 +509,16 @@ msgstr ""
|
|||
"instructions du code intermédiaire."
|
||||
|
||||
#: glossary.rst:212
|
||||
#, fuzzy
|
||||
msgid "callable"
|
||||
msgstr "fonction de rappel"
|
||||
msgstr "appelable (*callable*)"
|
||||
|
||||
#: glossary.rst:214
|
||||
msgid ""
|
||||
"A callable is an object that can be called, possibly with a set of arguments "
|
||||
"(see :term:`argument`), with the following syntax::"
|
||||
msgstr ""
|
||||
"Un appelable est un objet qui peut être appelé, éventuellement avec un "
|
||||
"ensemble d'arguments (voir :term:`argument`), avec la syntaxe suivante ::"
|
||||
|
||||
#: glossary.rst:219
|
||||
msgid ""
|
||||
|
@ -520,16 +526,21 @@ msgid ""
|
|||
"instance of a class that implements the :meth:`~object.__call__` method is "
|
||||
"also a callable."
|
||||
msgstr ""
|
||||
"Une :term:`fonction <function>`, et par extension une :term:`méthode "
|
||||
"<method>`, est un appelable. Une instance d'une classe qui implémente la "
|
||||
"méthode :meth:`~object.__call__` est également un appelable."
|
||||
|
||||
#: glossary.rst:222
|
||||
msgid "callback"
|
||||
msgstr "fonction de rappel"
|
||||
msgstr "fonction de rappel (*callback*)"
|
||||
|
||||
#: glossary.rst:224
|
||||
msgid ""
|
||||
"A subroutine function which is passed as an argument to be executed at some "
|
||||
"point in the future."
|
||||
msgstr "Une sous-fonction passée en argument pour être exécutée plus tard."
|
||||
msgstr ""
|
||||
"Une fonction (classique, par opposition à une coroutine) passée en argument "
|
||||
"pour être exécutée plus tard."
|
||||
|
||||
#: glossary.rst:226
|
||||
msgid "class"
|
||||
|
@ -788,8 +799,8 @@ msgid ""
|
|||
msgstr ""
|
||||
"Écriture concise pour traiter tout ou partie des éléments d'un itérable et "
|
||||
"renvoyer un dictionnaire contenant les résultats. ``results = {n: n ** 2 for "
|
||||
"n in range(10)}`` génère un dictionnaire contenant des clés ``n`` liée à "
|
||||
"leur valeurs ``n ** 2``. Voir :ref:`comprehensions`."
|
||||
"n in range(10)}`` génère un dictionnaire contenant des clés ``n`` liées à "
|
||||
"leurs valeurs ``n ** 2``. Voir :ref:`compréhensions <comprehensions>`."
|
||||
|
||||
#: glossary.rst:338
|
||||
msgid "dictionary view"
|
||||
|
@ -811,7 +822,7 @@ msgstr ""
|
|||
|
||||
#: glossary.rst:346
|
||||
msgid "docstring"
|
||||
msgstr "*docstring* (chaîne de documentation)"
|
||||
msgstr "chaîne de documentation (*docstring*)"
|
||||
|
||||
#: glossary.rst:348
|
||||
msgid ""
|
||||
|
@ -829,7 +840,7 @@ msgstr ""
|
|||
|
||||
#: glossary.rst:354
|
||||
msgid "duck-typing"
|
||||
msgstr "duck-typing"
|
||||
msgstr "typage canard (*duck-typing*)"
|
||||
|
||||
#: glossary.rst:356
|
||||
msgid ""
|
||||
|
@ -1299,7 +1310,6 @@ msgstr ""
|
|||
"machines ayant plusieurs processeurs."
|
||||
|
||||
#: glossary.rst:551
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"However, some extension modules, either standard or third-party, are "
|
||||
"designed so as to release the GIL when doing computationally intensive tasks "
|
||||
|
@ -1309,7 +1319,7 @@ msgstr ""
|
|||
"Cependant, certains modules d'extension, standards ou non, sont conçus de "
|
||||
"manière à libérer le GIL lorsqu'ils effectuent des tâches lourdes tel que la "
|
||||
"compression ou le hachage. De la même manière, le GIL est toujours libéré "
|
||||
"lors des entrées / sorties."
|
||||
"lors des entrées-sorties."
|
||||
|
||||
#: glossary.rst:556
|
||||
msgid ""
|
||||
|
@ -1388,14 +1398,14 @@ msgid "IDLE"
|
|||
msgstr "IDLE"
|
||||
|
||||
#: glossary.rst:586
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"An Integrated Development and Learning Environment for Python. :ref:`idle` "
|
||||
"is a basic editor and interpreter environment which ships with the standard "
|
||||
"distribution of Python."
|
||||
msgstr ""
|
||||
"Environnement de développement intégré pour Python. IDLE est un éditeur "
|
||||
"basique et un interpréteur livré avec la distribution standard de Python."
|
||||
"Environnement d'apprentissage et de développement intégré pour Python. :ref:"
|
||||
"`IDLE <idle>` est un éditeur basique et un interpréteur livré avec la "
|
||||
"distribution standard de Python."
|
||||
|
||||
#: glossary.rst:589
|
||||
msgid "immutable"
|
||||
|
@ -1434,7 +1444,7 @@ msgstr ""
|
|||
|
||||
#: glossary.rst:603
|
||||
msgid "importing"
|
||||
msgstr "importing"
|
||||
msgstr "importation"
|
||||
|
||||
#: glossary.rst:605
|
||||
msgid ""
|
||||
|
@ -1541,10 +1551,11 @@ msgid ""
|
|||
"term:`sequence` semantics."
|
||||
msgstr ""
|
||||
"Objet capable de renvoyer ses éléments un à un. Par exemple, tous les types "
|
||||
"séquence (comme :class:`list`, :class:`str`, et :class:`tuple`), quelques "
|
||||
"autres types comme :class:`dict`, les :term:`objets fichiers <file object>` "
|
||||
"ou tout objet d'une classe ayant une méthode :meth:`__iter__` ou :meth:"
|
||||
"`__getitem__` qui implémente la sémantique d'une :term:`séquence <sequence>`."
|
||||
"de séquences (comme :class:`list`, :class:`str`, et :class:`tuple`), "
|
||||
"quelques autres types comme :class:`dict`, les :term:`objets fichiers <file "
|
||||
"object>` ou tout objet d'une classe ayant une méthode :meth:`__iter__` ou :"
|
||||
"meth:`__getitem__` qui implémente la sémantique d'une :term:`séquence "
|
||||
"<sequence>`."
|
||||
|
||||
#: glossary.rst:650
|
||||
msgid ""
|
||||
|
@ -1756,7 +1767,7 @@ msgstr ""
|
|||
|
||||
#: glossary.rst:735
|
||||
msgid "list"
|
||||
msgstr "list"
|
||||
msgstr "liste"
|
||||
|
||||
#: glossary.rst:737
|
||||
msgid ""
|
||||
|
@ -1976,7 +1987,7 @@ msgstr ""
|
|||
|
||||
#: glossary.rst:818
|
||||
msgid "named tuple"
|
||||
msgstr "n-uplet nommé"
|
||||
msgstr "*n*-uplet nommé"
|
||||
|
||||
#: glossary.rst:820
|
||||
msgid ""
|
||||
|
@ -2122,7 +2133,6 @@ msgid "package"
|
|||
msgstr "paquet"
|
||||
|
||||
#: glossary.rst:884
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"A Python :term:`module` which can contain submodules or recursively, "
|
||||
"subpackages. Technically, a package is a Python module with a ``__path__`` "
|
||||
|
@ -2172,7 +2182,7 @@ msgstr ""
|
|||
":dfn:`positional-only` : définit un argument qui ne peut être fourni que par "
|
||||
"position. Les paramètres *positional-only* peuvent être définis en insérant "
|
||||
"un caractère \"/\" dans la liste de paramètres de la définition de fonction "
|
||||
"après eux. Par exemple : *posonly1* et *posonly2* dans le code suivant ::"
|
||||
"après eux. Par exemple : *posonly1* et *posonly2* dans le code suivant ::"
|
||||
|
||||
#: glossary.rst:913
|
||||
msgid ""
|
||||
|
@ -2345,7 +2355,7 @@ msgid ""
|
|||
"responsible for building consensus within the community and documenting "
|
||||
"dissenting opinions."
|
||||
msgstr ""
|
||||
"Les PEPs sont censés être les principaux mécanismes pour proposer de "
|
||||
"Les PEP sont censées être les principaux mécanismes pour proposer de "
|
||||
"nouvelles fonctionnalités majeures, pour recueillir les commentaires de la "
|
||||
"communauté sur une question et pour documenter les décisions de conception "
|
||||
"qui sont intégrées en Python. L’auteur du PEP est responsable de "
|
||||
|
@ -2838,8 +2848,8 @@ msgid ""
|
|||
"Type hints of global variables, class attributes, and functions, but not "
|
||||
"local variables, can be accessed using :func:`typing.get_type_hints`."
|
||||
msgstr ""
|
||||
"Les indicateurs de type de variables globales, d'attributs de classe et de "
|
||||
"fonctions, mais pas de variables locales, peuvent être consultés en "
|
||||
"Les indications de type de variables globales, d'attributs de classe et de "
|
||||
"fonctions, mais pas de variables locales, peuvent être consultées en "
|
||||
"utilisant :func:`typing.get_type_hints`."
|
||||
|
||||
#: glossary.rst:1214
|
||||
|
@ -2887,7 +2897,7 @@ msgstr ""
|
|||
#: glossary.rst:1236
|
||||
msgid "Variable annotation syntax is explained in section :ref:`annassign`."
|
||||
msgstr ""
|
||||
"La syntaxe d'annotation de la variable est expliquée dans la section :ref:"
|
||||
"La syntaxe d'annotation de variable est expliquée dans la section :ref:"
|
||||
"`annassign`."
|
||||
|
||||
#: glossary.rst:1238
|
||||
|
|
|
@ -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: 2022-05-12 09:43+0200\n"
|
||||
"Last-Translator: ZepmanBC <zepman@gmail.com>\n"
|
||||
"PO-Revision-Date: 2023-02-17 10:44+0100\n"
|
||||
"Last-Translator: CédricM <c.morgantini@free.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.1\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
|
||||
#: howto/annotations.rst:5
|
||||
msgid "Annotations Best Practices"
|
||||
|
@ -132,6 +132,11 @@ msgid ""
|
|||
"parent's ``__annotations__``. In Python 3.10 and newer, the child class's "
|
||||
"annotations will be an empty dict instead."
|
||||
msgstr ""
|
||||
"Dans les versions antérieures à Python 3.10, l'accès aux ``__annotations__`` "
|
||||
"d'une classe qui n'a pas d'annotation mais dont un parent de cette classe en "
|
||||
"a, aurait renvoyé les ``__annotations__`` de la classe parent. Dans les "
|
||||
"versions 3.10 et plus récentes, le résultat d'annotations de la classe "
|
||||
"enfant est un dictionnaire vide."
|
||||
|
||||
#: howto/annotations.rst:68
|
||||
msgid "Accessing The Annotations Dict Of An Object In Python 3.9 And Older"
|
||||
|
@ -175,8 +180,7 @@ msgstr ""
|
|||
"problème est que, puisque ``__annotations__`` est optionnel sur les classes "
|
||||
"et que les classes peuvent hériter des attributs de leurs classes de base, "
|
||||
"accéder à l'attribut ``__annotations__`` d'une classe peut par inadvertance "
|
||||
"renvoyer le dictionnaire d'annotations d'une *classe de base.* Par "
|
||||
"exemple : ::"
|
||||
"renvoyer le dictionnaire d'annotations d'une *classe de base.* Par exemple ::"
|
||||
|
||||
#: howto/annotations.rst:98
|
||||
msgid "This will print the annotations dict from ``Base``, not ``Derived``."
|
||||
|
@ -208,7 +212,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Pour résumer, voici un exemple de code qui accède en toute sécurité à "
|
||||
"l'attribut ``__annotations__`` d'un objet quelconque en Python 3.9 et "
|
||||
"antérieur : ::"
|
||||
"antérieur ::"
|
||||
|
||||
#: howto/annotations.rst:118
|
||||
msgid ""
|
||||
|
@ -453,7 +457,7 @@ msgstr ""
|
|||
"Si Python convertit vos annotations en chaînes de caractères (en utilisant "
|
||||
"``from __future__ import annotations``), et que vous spécifiez une chaîne de "
|
||||
"caractères comme annotation, la chaîne sera elle-même entre guillemets. En "
|
||||
"fait, l'annotation est mise entre guillemets *deux fois*. Par exemple : ::"
|
||||
"fait, l'annotation est mise entre guillemets *deux fois*. Par exemple ::"
|
||||
|
||||
#: howto/annotations.rst:231
|
||||
msgid ""
|
||||
|
|
|
@ -58,11 +58,11 @@ msgid ""
|
|||
"introductory tutorial by making use of the :command:`ls` command:"
|
||||
msgstr ""
|
||||
"Commençons par l'utilisation de la commande :command:`ls` pour voir le type "
|
||||
"de fonctionnalité que nous allons étudier dans ce tutoriel d'introduction :"
|
||||
"de fonctionnalité que nous allons étudier dans ce tutoriel d'introduction :"
|
||||
|
||||
#: howto/argparse.rst:46
|
||||
msgid "A few concepts we can learn from the four commands:"
|
||||
msgstr "Quelques concepts que l'on peut apprendre avec les quatre commandes :"
|
||||
msgstr "Quelques concepts que l'on peut apprendre avec les quatre commandes :"
|
||||
|
||||
#: howto/argparse.rst:48
|
||||
msgid ""
|
||||
|
@ -122,11 +122,11 @@ msgstr "Commençons par un exemple très simple qui ne fait (quasiment) rien ::
|
|||
|
||||
#: howto/argparse.rst:186 howto/argparse.rst:207
|
||||
msgid "Following is a result of running the code:"
|
||||
msgstr "Ce qui suit est le résultat de l'exécution du code :"
|
||||
msgstr "Ce qui suit est le résultat de l'exécution du code :"
|
||||
|
||||
#: howto/argparse.rst:252 howto/argparse.rst:296
|
||||
msgid "Here is what is happening:"
|
||||
msgstr "Voilà ce qu'il se passe :"
|
||||
msgstr "Voilà ce qu'il se passe :"
|
||||
|
||||
#: howto/argparse.rst:97
|
||||
msgid ""
|
||||
|
@ -166,11 +166,11 @@ msgstr "Un exemple ::"
|
|||
|
||||
#: howto/argparse.rst:120
|
||||
msgid "And running the code:"
|
||||
msgstr "On exécute le code :"
|
||||
msgstr "On exécute le code :"
|
||||
|
||||
#: howto/argparse.rst:138
|
||||
msgid "Here is what's happening:"
|
||||
msgstr "Voilà ce qu'il se passe :"
|
||||
msgstr "Voilà ce qu'il se passe :"
|
||||
|
||||
#: howto/argparse.rst:140
|
||||
msgid ""
|
||||
|
@ -223,7 +223,7 @@ msgstr ""
|
|||
|
||||
#: howto/argparse.rst:165
|
||||
msgid "And we get:"
|
||||
msgstr "Et on obtient :"
|
||||
msgstr "Et on obtient :"
|
||||
|
||||
#: howto/argparse.rst:178
|
||||
msgid "Now, how about doing something even more useful::"
|
||||
|
@ -263,7 +263,7 @@ msgstr ""
|
|||
|
||||
#: howto/argparse.rst:280 howto/argparse.rst:430
|
||||
msgid "And the output:"
|
||||
msgstr "Et le résultat :"
|
||||
msgstr "Et le résultat :"
|
||||
|
||||
#: howto/argparse.rst:254
|
||||
msgid ""
|
||||
|
@ -353,7 +353,7 @@ msgstr ""
|
|||
|
||||
#: howto/argparse.rst:326
|
||||
msgid "And here goes:"
|
||||
msgstr "Et voilà :"
|
||||
msgstr "Et voilà :"
|
||||
|
||||
#: howto/argparse.rst:339
|
||||
msgid "Note that the new ability is also reflected in the help text."
|
||||
|
@ -369,7 +369,7 @@ msgstr "Notre programme continue de croître en complexité ::"
|
|||
|
||||
#: howto/argparse.rst:360
|
||||
msgid "And now the output:"
|
||||
msgstr "Et voilà le résultat :"
|
||||
msgstr "Et voilà le résultat :"
|
||||
|
||||
#: howto/argparse.rst:374
|
||||
msgid "We've brought back a positional argument, hence the complaint."
|
||||
|
@ -481,7 +481,7 @@ msgstr "Corrigeons ::"
|
|||
|
||||
#: howto/argparse.rst:539
|
||||
msgid "And this is what it gives:"
|
||||
msgstr "Et c'est ce que ça donne :"
|
||||
msgstr "Et c'est ce que ça donne :"
|
||||
|
||||
#: howto/argparse.rst:554
|
||||
msgid ""
|
||||
|
@ -516,7 +516,7 @@ msgstr ""
|
|||
|
||||
#: howto/argparse.rst:583
|
||||
msgid "And:"
|
||||
msgstr "Et :"
|
||||
msgstr "Et :"
|
||||
|
||||
#: howto/argparse.rst:590
|
||||
msgid ""
|
||||
|
@ -543,7 +543,7 @@ msgstr ""
|
|||
|
||||
#: howto/argparse.rst:654
|
||||
msgid "Output:"
|
||||
msgstr "Sortie :"
|
||||
msgstr "Sortie :"
|
||||
|
||||
#: howto/argparse.rst:637
|
||||
msgid ""
|
||||
|
@ -583,7 +583,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Notre programme est maintenant plus simple, et nous avons perdu des "
|
||||
"fonctionnalités pour faire cette démonstration. Peu importe, voici la sortie "
|
||||
"du programme :"
|
||||
"du programme :"
|
||||
|
||||
#: howto/argparse.rst:714
|
||||
msgid ""
|
||||
|
@ -612,7 +612,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Notez cette nuance dans le texte d'utilisation. Les options ``[-v | -q]`` "
|
||||
"nous disent que nous pouvons utiliser au choix ``-v`` ou ``-q``, mais pas "
|
||||
"les deux ensemble :"
|
||||
"les deux ensemble :"
|
||||
|
||||
#: howto/argparse.rst:761
|
||||
msgid "Conclusion"
|
||||
|
|
|
@ -1073,7 +1073,7 @@ msgstr ""
|
|||
"avant les paramètres que vous souhaitez inclure dans le groupe, puis un "
|
||||
"``]`` seul sur une ligne après ces paramètres. Voici, par exemple, comment "
|
||||
"``curses.window.addch`` utilise les groupes optionnels pour rendre optionnel "
|
||||
"les deux premiers paramètres ainsi que le dernier :"
|
||||
"les deux premiers paramètres ainsi que le dernier ::"
|
||||
|
||||
#: howto/clinic.rst:699
|
||||
msgid "Notes:"
|
||||
|
|
|
@ -423,7 +423,7 @@ msgstr ""
|
|||
"partie du tampon à la fois. La création d'un tampon nécessite de fournir sa "
|
||||
"hauteur et sa largeur, tandis que pour le rafraîchissement du tampon, vous "
|
||||
"devez fournir les coordonnées de la zone de l'écran où une partie du tampon "
|
||||
"sera affichée."
|
||||
"sera affichée. ::"
|
||||
|
||||
#: howto/curses.rst:237
|
||||
msgid ""
|
||||
|
|
|
@ -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-01-14 19:47+0100\n"
|
||||
"Last-Translator: Mathieu Dupuy <deronnax@gmail.com>\n"
|
||||
"PO-Revision-Date: 2023-03-27 16:50+0200\n"
|
||||
"Last-Translator: Mathieu Dupuy\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.1\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
|
||||
#: howto/descriptor.rst:5
|
||||
msgid "Descriptor HowTo Guide"
|
||||
|
@ -898,7 +898,6 @@ msgid "ORM example"
|
|||
msgstr "Exemple d'ORM"
|
||||
|
||||
#: howto/descriptor.rst:850
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"The following code is a simplified skeleton showing how data descriptors "
|
||||
"could be used to implement an `object relational mapping <https://en."
|
||||
|
@ -979,7 +978,7 @@ msgid ""
|
|||
"The documentation shows a typical use to define a managed attribute ``x``:"
|
||||
msgstr ""
|
||||
"La documentation montre une utilisation caractéristique pour définir un "
|
||||
"attribut géré ``x`` ::"
|
||||
"attribut géré ``x`` :"
|
||||
|
||||
#: howto/descriptor.rst:988
|
||||
msgid ""
|
||||
|
@ -987,7 +986,7 @@ msgid ""
|
|||
"protocol, here is a pure Python equivalent:"
|
||||
msgstr ""
|
||||
"Pour voir comment :func:`property` est implémentée dans le protocole du "
|
||||
"descripteur, voici un équivalent en Python pur ::"
|
||||
"descripteur, voici un équivalent en Python pur :"
|
||||
|
||||
#: howto/descriptor.rst:1091
|
||||
msgid ""
|
||||
|
@ -1013,7 +1012,7 @@ msgstr ""
|
|||
"exigent que la cellule soit recalculée à chaque accès ; cependant, le "
|
||||
"programmeur ne veut pas impacter le code client existant accédant "
|
||||
"directement à l'attribut. La solution consiste à envelopper l'accès à "
|
||||
"l'attribut *value* dans un descripteur de données ::"
|
||||
"l'attribut *value* dans un descripteur de données :"
|
||||
|
||||
#: howto/descriptor.rst:1112
|
||||
msgid ""
|
||||
|
@ -1069,7 +1068,7 @@ msgstr ""
|
|||
"incluent la méthode :meth:`__get__` pour lier les méthodes pendant l'accès "
|
||||
"aux attributs. Cela signifie que toutes les fonctions sont des descripteurs "
|
||||
"hors-données qui renvoient des méthodes liées au cours d'une recherche "
|
||||
"d'attribut d'une instance. Cela fonctionne ainsi ::"
|
||||
"d'attribut d'une instance. Cela fonctionne ainsi :"
|
||||
|
||||
#: howto/descriptor.rst:1160
|
||||
msgid ""
|
||||
|
@ -1077,7 +1076,7 @@ msgid ""
|
|||
"descriptor works in practice:"
|
||||
msgstr ""
|
||||
"L'exécution de la classe suivante dans l'interpréteur montre comment le "
|
||||
"descripteur de fonction se comporte en pratique ::"
|
||||
"descripteur de fonction se comporte en pratique :"
|
||||
|
||||
#: howto/descriptor.rst:1169
|
||||
msgid ""
|
||||
|
@ -1156,7 +1155,7 @@ msgstr ""
|
|||
msgid "This chart summarizes the binding and its two most useful variants:"
|
||||
msgstr ""
|
||||
"Ce tableau résume le lien classique (*binding*) et ses deux variantes les "
|
||||
"plus utiles ::"
|
||||
"plus utiles :"
|
||||
|
||||
#: howto/descriptor.rst:1222
|
||||
msgid "Transformation"
|
||||
|
@ -1252,7 +1251,7 @@ msgid ""
|
|||
"example calls are unexciting:"
|
||||
msgstr ""
|
||||
"Puisque les méthodes statiques renvoient la fonction sous-jacente sans "
|
||||
"changement, les exemples d’appels sont d'une grande banalité ::"
|
||||
"changement, les exemples d’appels sont d'une grande banalité :"
|
||||
|
||||
#: howto/descriptor.rst:1271
|
||||
msgid ""
|
||||
|
@ -1260,7 +1259,7 @@ msgid ""
|
|||
"`staticmethod` would look like this:"
|
||||
msgstr ""
|
||||
"En utilisant le protocole de descripteur hors-données, une version Python "
|
||||
"pure de :func:`staticmethod` ressemblerait à ceci ::"
|
||||
"pure de :func:`staticmethod` ressemblerait à ceci :"
|
||||
|
||||
#: howto/descriptor.rst:1310
|
||||
msgid "Class methods"
|
||||
|
@ -1274,7 +1273,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Contrairement aux méthodes statiques, les méthodes de classe ajoutent la "
|
||||
"référence de classe en tête de la liste d'arguments, avant d'appeler la "
|
||||
"fonction. C'est le même format que l'appelant soit un objet ou une classe ::"
|
||||
"fonction. C'est le même format que l'appelant soit un objet ou une classe :"
|
||||
|
||||
#: howto/descriptor.rst:1330
|
||||
msgid ""
|
||||
|
@ -1289,7 +1288,7 @@ msgstr ""
|
|||
"particulière. Une des utilisations des méthodes de classe est de créer des "
|
||||
"constructeurs de classe personnalisés. Par exemple, la méthode de classe :"
|
||||
"func:`dict.fromkeys` crée un nouveau dictionnaire à partir d'une liste de "
|
||||
"clés. L'équivalent Python pur est ::"
|
||||
"clés. L'équivalent Python pur est :"
|
||||
|
||||
#: howto/descriptor.rst:1347
|
||||
msgid "Now a new dictionary of unique keys can be constructed like this:"
|
||||
|
|
363
howto/enum.po
363
howto/enum.po
File diff suppressed because it is too large
Load Diff
|
@ -33,4 +33,4 @@ msgstr ""
|
|||
|
||||
#: howto/index.rst:11
|
||||
msgid "Currently, the HOWTOs are:"
|
||||
msgstr "Actuellement, les HOWTOs sont :"
|
||||
msgstr "Actuellement, les HOWTOs sont :"
|
||||
|
|
|
@ -40,7 +40,7 @@ msgstr ""
|
|||
"*DTrace* et *SystemTap* sont des outils de surveillance, chacun fournissant "
|
||||
"un moyen de d'inspecter ce que font les processus d'un système informatique. "
|
||||
"Ils utilisent tous les deux des langages dédiés permettant à un utilisateur "
|
||||
"d'écrire des scripts qui permettent de ::"
|
||||
"d'écrire des scripts qui permettent de :"
|
||||
|
||||
#: howto/instrumentation.rst:16
|
||||
msgid "filter which processes are to be observed"
|
||||
|
@ -103,7 +103,7 @@ msgstr "ou ::"
|
|||
msgid ""
|
||||
"CPython must then be :option:`configured with the --with-dtrace option <--"
|
||||
"with-dtrace>`:"
|
||||
msgstr "CPython doit être configuré avec l'option :option:`--with-dtrace` ::"
|
||||
msgstr "CPython doit être configuré avec l'option :option:`--with-dtrace` :"
|
||||
|
||||
#: howto/instrumentation.rst:56
|
||||
msgid ""
|
||||
|
@ -166,7 +166,7 @@ msgstr ""
|
|||
"L'exemple suivant de script *DTrace* montre la hiérarchie d'appel/retour "
|
||||
"d'un script Python, en ne traçant que l'invocation d'une fonction ``start``. "
|
||||
"En d'autres termes, les appels de fonctions lors de la phase d'import ne "
|
||||
"seront pas répertoriées ::"
|
||||
"seront pas répertoriées :"
|
||||
|
||||
#: howto/instrumentation.rst:230
|
||||
msgid "It can be invoked like this::"
|
||||
|
@ -174,7 +174,7 @@ msgstr "Il peut être utilisé de cette manière ::"
|
|||
|
||||
#: howto/instrumentation.rst:236
|
||||
msgid "The output looks like this:"
|
||||
msgstr "La sortie ressemble à ceci ::"
|
||||
msgstr "La sortie ressemble à ceci :"
|
||||
|
||||
#: howto/instrumentation.rst:201
|
||||
msgid "Static SystemTap markers"
|
||||
|
@ -196,11 +196,11 @@ msgid ""
|
|||
"hierarchy of a Python script:"
|
||||
msgstr ""
|
||||
"Par exemple, ce script *SystemTap* peut être utilisé pour afficher la "
|
||||
"hiérarchie d'appel/retour d'un script Python ::"
|
||||
"hiérarchie d'appel/retour d'un script Python :"
|
||||
|
||||
#: howto/instrumentation.rst:247
|
||||
msgid "where the columns are:"
|
||||
msgstr "où les colonnes sont ::"
|
||||
msgstr "où les colonnes sont :"
|
||||
|
||||
#: howto/instrumentation.rst:249
|
||||
msgid "time in microseconds since start of script"
|
||||
|
@ -233,7 +233,7 @@ msgstr ""
|
|||
|
||||
#: howto/instrumentation.rst:265
|
||||
msgid "should instead read:"
|
||||
msgstr "doit plutôt se lire comme ::"
|
||||
msgstr "doit plutôt se lire comme :"
|
||||
|
||||
#: howto/instrumentation.rst:271
|
||||
msgid "(assuming a :ref:`debug build <debug-build>` of CPython 3.6)"
|
||||
|
@ -375,7 +375,7 @@ msgstr ""
|
|||
msgid "Here is a tapset file, based on a non-shared build of CPython:"
|
||||
msgstr ""
|
||||
"Voici un fichier *tapset*, basé sur une version non partagée compilée de "
|
||||
"CPython ::"
|
||||
"CPython :"
|
||||
|
||||
#: howto/instrumentation.rst:374
|
||||
msgid ""
|
||||
|
@ -384,7 +384,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Si ce fichier est installé dans le répertoire *tapset* de *SystemTap* (par "
|
||||
"exemple ``/usr/share/systemtap/tapset``), alors ces sondes supplémentaires "
|
||||
"deviennent disponibles ::"
|
||||
"deviennent disponibles :"
|
||||
|
||||
#: howto/instrumentation.rst:380
|
||||
msgid ""
|
||||
|
@ -419,7 +419,7 @@ msgstr ""
|
|||
"Ce script *SystemTap* utilise le *tapset* ci-dessus pour implémenter plus "
|
||||
"proprement l'exemple précédent de traçage de la hiérarchie des appels de "
|
||||
"fonctions Python, sans avoir besoin de nommer directement les marqueurs "
|
||||
"statiques ::"
|
||||
"statiques :"
|
||||
|
||||
#: howto/instrumentation.rst:412
|
||||
#, fuzzy
|
||||
|
@ -431,4 +431,4 @@ msgstr ""
|
|||
"Le script suivant utilise le *tapset* ci-dessus pour fournir une vue de "
|
||||
"l'ensemble du code CPython en cours d'exécution, montrant les 20 cadres de "
|
||||
"la pile d'appel (*stack frames*) les plus fréquemment utilisées du code "
|
||||
"intermédiaire, chaque seconde, sur l'ensemble du système ::"
|
||||
"intermédiaire, chaque seconde, sur l'ensemble du système :"
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -5,14 +5,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: 2022-12-16 21:06+0100\n"
|
||||
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
|
||||
"PO-Revision-Date: 2023-03-24 12:32+0100\n"
|
||||
"Last-Translator: Mathieu Dupuy\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.1\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
|
||||
#: howto/logging.rst:3
|
||||
msgid "Logging HOWTO"
|
||||
|
@ -281,7 +281,6 @@ msgid "Logging to a file"
|
|||
msgstr "Enregistrer les évènements dans un fichier"
|
||||
|
||||
#: howto/logging.rst:126
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"A very common situation is that of recording logging events in a file, so "
|
||||
"let's look at that next. Be sure to try the following in a newly started "
|
||||
|
@ -352,7 +351,6 @@ msgstr ""
|
|||
"erreur pour la valeur de ce paramètre, comme dans l'exemple ci-dessous ::"
|
||||
|
||||
#: howto/logging.rst:181
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"The call to :func:`basicConfig` should come *before* any calls to :func:"
|
||||
"`debug`, :func:`info`, etc. Otherwise, those functions will call :func:"
|
||||
|
@ -360,10 +358,11 @@ msgid ""
|
|||
"off simple configuration facility, only the first call will actually do "
|
||||
"anything: subsequent calls are effectively no-ops."
|
||||
msgstr ""
|
||||
"L'appel à :func:`basicConfig` doit être fait *avant* un appel à :func:"
|
||||
"`debug`, :func:`info`, etc. Comme l'objectif est d'avoir un outil de "
|
||||
"configuration simple et d'usage unique, seul le premier appel aura un effet, "
|
||||
"les appels suivants ne font rien."
|
||||
"L'appel à :func:`basicConfig` doit être fait *avant* tout appel à :func:"
|
||||
"`debug`, :func:`info`, etc. Sinon, ces fonctions appelleront :func:"
|
||||
"`basicConfig` pour vous avec les options par défaut. Comme il s'agit d'un "
|
||||
"outil de configuration simple et unique, seul le premier appel fera quelque "
|
||||
"chose : les appels suivants ne feront rien."
|
||||
|
||||
#: howto/logging.rst:187
|
||||
msgid ""
|
||||
|
@ -713,7 +712,7 @@ msgstr ""
|
|||
msgid "The default format set by :func:`basicConfig` for messages is:"
|
||||
msgstr ""
|
||||
"Le format par défaut des messages est défini par :func:`basicConfig` comme "
|
||||
"suit ::"
|
||||
"suit :"
|
||||
|
||||
#: howto/logging.rst:407
|
||||
msgid ""
|
||||
|
@ -1052,17 +1051,16 @@ msgstr ""
|
|||
"défaut est :"
|
||||
|
||||
#: howto/logging.rst:555
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"with the milliseconds tacked on at the end. The ``style`` is one of ``'%'``, "
|
||||
"``'{'``, or ``'$'``. If one of these is not specified, then ``'%'`` will be "
|
||||
"used."
|
||||
msgstr ""
|
||||
"avec les millisecondes en suffixe. Le ``style`` est ``%``, ``{`` ou ``$``. "
|
||||
"Si aucun n'est spécifié, ``%`` sera utilisé."
|
||||
"avec les millisecondes ajoutées à la fin. ``style`` est l'un des suivants : "
|
||||
"``'%'``, ``'{'``, ou ``'$'``. Si l'un de ces styles n'est pas spécifié, "
|
||||
"alors ``'%'`` sera utilisé."
|
||||
|
||||
#: howto/logging.rst:558
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"If the ``style`` is ``'%'``, the message format string uses ``%(<dictionary "
|
||||
"key>)s`` styled string substitution; the possible keys are documented in :"
|
||||
|
@ -1071,13 +1069,13 @@ msgid ""
|
|||
"arguments), while if the style is ``'$'`` then the message format string "
|
||||
"should conform to what is expected by :meth:`string.Template.substitute`."
|
||||
msgstr ""
|
||||
"Si l'argument ``style`` est ``%``, la chaîne de formatage utilise ``%(<clef "
|
||||
"de dictionnaire>)s`` comme style de substitution de chaîne de caractères ; "
|
||||
"les clefs possibles sont documentées dans :ref:`logrecord-attributes`. Si le "
|
||||
"style est ``{``, le message de la chaîne de formatage est compatible avec :"
|
||||
"meth:`str.format` (en employant des arguments à mots clefs). Enfin si le "
|
||||
"style est ``$`` alors la chaîne de formatage du message doit être conforme à "
|
||||
"ce qui est attendu de :meth:`string.Template.substitute`."
|
||||
"Si l'argument ``style`` est ``'%'``, la chaîne de formatage utilise "
|
||||
"``%(<clef de dictionnaire>)s`` comme style de substitution de chaîne de "
|
||||
"caractères. Les clefs possibles sont documentées dans :ref:`logrecord-"
|
||||
"attributes`. Si le style est ``'{'``, le message de la chaîne de formatage "
|
||||
"est compatible avec :meth:`str.format` (en employant des arguments nommés). "
|
||||
"Enfin si le style est ``'$'`` alors la chaîne de formatage du message doit "
|
||||
"être conforme à ce qui est attendu de :meth:`string.Template.substitute`."
|
||||
|
||||
#: howto/logging.rst:565
|
||||
msgid "Added the ``style`` parameter."
|
||||
|
|
|
@ -79,7 +79,7 @@ msgid ""
|
|||
"are:"
|
||||
msgstr ""
|
||||
"Afin de rendre votre projet compatible Python 2/3 avec le même code source, "
|
||||
"les étapes de base sont :"
|
||||
"les étapes de base sont :"
|
||||
|
||||
#: howto/pyporting.rst:32
|
||||
msgid "Only worry about supporting Python 2.7"
|
||||
|
@ -423,7 +423,7 @@ msgstr ""
|
|||
"division`` à tous les fichiers utilisant les opérateurs ``/`` et ``//`` ou à "
|
||||
"exécuter l'interpréteur avec l'option ``-Q``. Si vous n'avez pas suivi cette "
|
||||
"recommandation, vous devrez manuellement modifier votre code et effectuer "
|
||||
"deux changements :"
|
||||
"deux changements :"
|
||||
|
||||
#: howto/pyporting.rst:178
|
||||
msgid "Add ``from __future__ import division`` to your files"
|
||||
|
@ -686,7 +686,7 @@ msgstr ""
|
|||
|
||||
#: howto/pyporting.rst:286
|
||||
msgid "To summarize:"
|
||||
msgstr "Pour résumer :"
|
||||
msgstr "Pour résumer :"
|
||||
|
||||
#: howto/pyporting.rst:288
|
||||
msgid "Decide which of your APIs take text and which take binary data"
|
||||
|
|
|
@ -6,7 +6,7 @@ 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: 2022-12-16 21:12+0100\n"
|
||||
"PO-Revision-Date: 2023-03-28 11:09+0200\n"
|
||||
"Last-Translator: Nabil Bendafi <nabil@bendafi.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
"Language: fr\n"
|
||||
|
@ -1398,7 +1398,7 @@ msgid ""
|
|||
"it is to read? ::"
|
||||
msgstr ""
|
||||
"Par exemple, voici une RE qui utilise :const:`re.VERBOSE` ; vous pouvez "
|
||||
"constater qu'elle est beaucoup plus facile à lire ::"
|
||||
"constater qu'elle est beaucoup plus facile à lire ::"
|
||||
|
||||
#: howto/regex.rst:660
|
||||
msgid "Without the verbose setting, the RE would look like this::"
|
||||
|
@ -1762,7 +1762,7 @@ msgid ""
|
|||
"substitutions."
|
||||
msgstr ""
|
||||
"Les renvois tels que celui-ci ne sont pas très utiles pour effectuer une "
|
||||
"simple recherche dans une chaîne — il n'y a que peu de formats de textes qui "
|
||||
"simple recherche dans une chaîne — il n'y a que peu de formats de textes qui "
|
||||
"répètent des données ainsi — mais vous verrez bientôt qu'ils sont *très* "
|
||||
"utiles pour effectuer des substitutions dans les chaînes."
|
||||
|
||||
|
@ -1918,7 +1918,6 @@ msgstr ""
|
|||
"meth:`~re.Match.groupdict` ::"
|
||||
|
||||
#: howto/regex.rst:952
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"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:"
|
||||
|
|
|
@ -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: 2022-10-18 12:27+0200\n"
|
||||
"PO-Revision-Date: 2023-02-16 15:07+0100\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.2.2\n"
|
||||
|
||||
#: howto/sockets.rst:5
|
||||
msgid "Socket Programming HOWTO"
|
||||
|
@ -201,7 +201,7 @@ msgid ""
|
|||
"mainloop of the web server::"
|
||||
msgstr ""
|
||||
"Maintenant que nous avons un connecteur « serveur », en écoute sur le port "
|
||||
"80, nous pouvons entrer dans la boucle principale du serveur web ::"
|
||||
"80, nous pouvons entrer dans la boucle principale du serveur web ::"
|
||||
|
||||
#: howto/sockets.rst:106
|
||||
msgid ""
|
||||
|
@ -481,7 +481,6 @@ msgid ""
|
|||
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*, "
|
||||
|
@ -489,21 +488,14 @@ msgid ""
|
|||
"order, these do nothing, but where the machine is byte-reversed, these swap "
|
||||
"the bytes around appropriately."
|
||||
msgstr ""
|
||||
"Il est parfaitement possible d’envoyer des données binaires sur un "
|
||||
"connecteur. Le gros problème est que toutes les machines n’utilisent pas les "
|
||||
"mêmes formats pour les données binaires. Par exemple, une puce Motorola code "
|
||||
"l'entier 1, sous 16 bits, comme les deux octets hexadécimaux 00 01. Intel et "
|
||||
"DEC, cependant, utilisent l’ordre d’octets inverse — ce même 1 est codé 01 "
|
||||
"00. Les bibliothèques de connecteurs ont des appels pour convertir des "
|
||||
"entiers de 16 et 32 bits — ``ntohl, htonl, ntohs, htons`` où ``n`` signifie "
|
||||
"*réseau* (*network*, en anglais) et ``h`` signifie *hôte*, ``s`` signifie "
|
||||
"*court* (*short*, en anglais) et ``l`` signifie *long*. Lorsque l’ordre du "
|
||||
"réseau est l’ordre de l’hôte, ceux-ci ne font rien, mais lorsque la machine "
|
||||
"utilise l’ordre d’octets inverse, ceux-ci échangent les octets de manière "
|
||||
"appropriée."
|
||||
"Les bibliothèques de sockets ont des appels pour convertir les entiers 16 et "
|
||||
"32 bits - ``ntohl, htonl, ntohs, htons`` où « n » signifie *network* "
|
||||
"(réseau) et « h » signifie *host* (hôte), « s » signifie *short* (court) et "
|
||||
"« l » signifie *long*. Lorsque l’ordre du réseau est l’ordre de l’hôte, ils "
|
||||
"ne font rien, mais lorsque la machine fonctionne en ordre inversé, ils "
|
||||
"échangent les octets de manière appropriée."
|
||||
|
||||
#: howto/sockets.rst:268
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"In these days of 64-bit machines, the ASCII representation of binary data is "
|
||||
"frequently smaller than the binary representation. That's because a "
|
||||
|
@ -512,13 +504,13 @@ msgid ""
|
|||
"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 "
|
||||
"De nos jours, avec les machines 64 bits, la représentation *ASCII* des "
|
||||
"données binaires est souvent plus compacte que la représentation binaire. "
|
||||
"C’est parce qu’un nombre surprenant de fois, tous ces *longs* ont la valeur "
|
||||
"0, ou peut-être 1. La chaîne « 0 » serait codée sur deux octets, alors "
|
||||
"qu'elle le serait sur quatre en binaire. Bien sûr, cela ne fonctionne pas "
|
||||
"très bien avec les messages de longueur fixe. Ah, les décisions, les "
|
||||
"décisions…"
|
||||
"C’est parce que dans un nombre surprenant de cas, tous ces *entiers* ont la "
|
||||
"valeur 0 et parfois 1. La chaîne « 0 » serait codée sur deux octets, alors "
|
||||
"qu'elle le serait sur 8 en tant que binaire 64 bits. Bien sûr, cela ne "
|
||||
"fonctionne pas très bien avec les messages de longueur fixe. C’est une "
|
||||
"affaire de choix."
|
||||
|
||||
#: howto/sockets.rst:277
|
||||
msgid "Disconnecting"
|
||||
|
|
|
@ -103,7 +103,7 @@ msgstr ""
|
|||
|
||||
#: howto/sorting.rst:55
|
||||
msgid "For example, here's a case-insensitive string comparison:"
|
||||
msgstr "Par exemple, voici une comparaison de texte insensible à la casse:"
|
||||
msgstr "Par exemple, voici une comparaison de texte insensible à la casse :"
|
||||
|
||||
#: howto/sorting.rst:62
|
||||
msgid ""
|
||||
|
@ -394,7 +394,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Pour effectuer les comparaisons entre deux objets, les routines de tri "
|
||||
"utilisent l'opérateur ``<``. Il est donc facile d'ajouter un ordre de tri "
|
||||
"standard à une classe en définissant sa méthode :meth:`__lt__` ::"
|
||||
"standard à une classe en définissant sa méthode :meth:`__lt__` :"
|
||||
|
||||
#: howto/sorting.rst:284
|
||||
msgid ""
|
||||
|
@ -468,7 +468,7 @@ msgstr ""
|
|||
#~ "En portant du code depuis Python 2.X vers 3.x, des problèmes peuvent "
|
||||
#~ "survenir quand des utilisateurs fournissent une fonction de comparaison "
|
||||
#~ "et qu'il faut convertir cette fonction en une fonction-clef. La fonction "
|
||||
#~ "d'encapsulation suivante rend cela plus facile à faire ::"
|
||||
#~ "d'encapsulation suivante rend cela plus facile à faire :"
|
||||
|
||||
#~ msgid "To convert to a key function, just wrap the old comparison function:"
|
||||
#~ msgstr ""
|
||||
|
|
|
@ -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: 2021-12-11 17:16+0100\n"
|
||||
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
|
||||
"PO-Revision-Date: 2023-03-26 17:48+0200\n"
|
||||
"Last-Translator: Mathieu Dupuy\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.2.2\n"
|
||||
|
||||
#: howto/unicode.rst:5
|
||||
msgid "Unicode HOWTO"
|
||||
|
@ -357,14 +357,13 @@ 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 <https://jkorpela.fi/unicode/guide.html>`_ to reading the Unicode "
|
||||
"character tables."
|
||||
msgstr ""
|
||||
"Pour aider à comprendre le standard, Jukka Korpela a écrit `un guide "
|
||||
"d’introduction <http://jkorpela.fi/unicode/guide.html>`_ à la lecture des "
|
||||
"d’introduction <https://jkorpela.fi/unicode/guide.html>`_ à la lecture des "
|
||||
"tables de caractères Unicode (ressource en anglais)."
|
||||
|
||||
#: howto/unicode.rst:173
|
||||
|
@ -836,12 +835,11 @@ msgstr ""
|
|||
"sont :"
|
||||
|
||||
#: howto/unicode.rst:520
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"`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."
|
||||
"`Processing Text Files in Python 3 <https://python-notes.curiousefficiency."
|
||||
"org/en/latest/python3/text_file_processing.html>`_, par Nick Coghlan."
|
||||
|
||||
#: howto/unicode.rst:521
|
||||
|
@ -1240,16 +1238,15 @@ msgstr ""
|
|||
"données et les réécrire."
|
||||
|
||||
#: howto/unicode.rst:737
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"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 ""
|
||||
"Une partie de la conférence `Mastering Python 3 Input/Output <http://pyvideo."
|
||||
"org/video/289/pycon-2010--mastering-python-3-i-o>`_ (ressource en anglais), "
|
||||
"donnée lors de *PyCon* 2010 de David Beazley, parle du traitement de texte "
|
||||
"et du traitement des données binaires."
|
||||
"Une partie de la conférence `Mastering Python 3 Input/Output <https://"
|
||||
"pyvideo.org/video/289/pycon-2010--mastering-python-3-i-o>`_ (ressource en "
|
||||
"anglais), donnée lors de *PyCon* 2010 de David Beazley, parle du traitement "
|
||||
"de texte et du traitement des données binaires."
|
||||
|
||||
#: howto/unicode.rst:741
|
||||
msgid ""
|
||||
|
@ -1267,13 +1264,12 @@ msgstr ""
|
|||
"diapositives ne couvrent que Python 2.x."
|
||||
|
||||
#: howto/unicode.rst:747
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"`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 ""
|
||||
"`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>`_ (ressource en anglais) est une conférence *PyCon* 2013 "
|
||||
"donnée par Benjamin Peterson qui traite de la représentation interne Unicode "
|
||||
"en Python 3.3."
|
||||
|
|
|
@ -1,26 +0,0 @@
|
|||
# Copyright (C) 2001-2018, Python Software Foundation
|
||||
# For licence information, see README file.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-23 09:57+0100\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"
|
||||
"Language: fr\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: includes/wasm-notavail.rst:-1
|
||||
msgid ":ref:`Availability <availability>`: not Emscripten, not WASI."
|
||||
msgstr ""
|
||||
|
||||
#: includes/wasm-notavail.rst:5
|
||||
msgid ""
|
||||
"This module does not work or is not available on WebAssembly platforms "
|
||||
"``wasm32-emscripten`` and ``wasm32-wasi``. See :ref:`wasm-availability` for "
|
||||
"more information."
|
||||
msgstr ""
|
|
@ -622,7 +622,7 @@ msgstr ""
|
|||
"USER_BASE` (écrit :file:`{userbase}` dans la suite). Ce schéma installe des "
|
||||
"modules Python purs et les modules d’extension au même endroit (aussi connu "
|
||||
"sous le nom de :data:`site.USER_SITE`).Voici les valeurs pour UNIX, y "
|
||||
"compris Mac OS X ::"
|
||||
"compris Mac OS X :"
|
||||
|
||||
#: install/index.rst:329 install/index.rst:429 install/index.rst:506
|
||||
#: install/index.rst:754
|
||||
|
@ -667,7 +667,7 @@ msgstr ":file:`{userbase}/include/python{X.Y}{abiflags}/{distname}`"
|
|||
|
||||
#: install/index.rst:326
|
||||
msgid "And here are the values used on Windows:"
|
||||
msgstr "Et voici les valeurs utilisées sur Windows ::"
|
||||
msgstr "Et voici les valeurs utilisées sur Windows :"
|
||||
|
||||
#: install/index.rst:331
|
||||
msgid ":file:`{userbase}\\\\Python{XY}\\\\site-packages`"
|
||||
|
@ -730,7 +730,7 @@ msgstr ""
|
|||
|
||||
#: install/index.rst:361
|
||||
msgid "Installing a new module distribution is as simple as ::"
|
||||
msgstr "Installer une nouvelle distribution de module est aussi simple que ::"
|
||||
msgstr "Installer une nouvelle distribution de module est aussi simple que ::"
|
||||
|
||||
#: install/index.rst:365
|
||||
msgid ""
|
||||
|
@ -763,7 +763,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"L’option :option:`!--home` définit le dossier de base de l’installation. Les "
|
||||
"fichiers sont installés dans les dossiers suivants sous la base de "
|
||||
"l'installation de la façon suivante ::"
|
||||
"l'installation de la façon suivante :"
|
||||
|
||||
#: install/index.rst:382
|
||||
msgid ":file:`{home}/lib/python`"
|
||||
|
@ -824,7 +824,7 @@ msgstr ""
|
|||
"plutôt que d’une addition locale. Cependant, si vous installez des modules "
|
||||
"Python depuis leur source, vous voulez probablement qu’ils aillent dans :"
|
||||
"file:`/usr/local/lib/python2.{X}` plutôt que dans :file:`/usr/lib/python2.{X}"
|
||||
"`. Ça peut être fait avec ::"
|
||||
"`. Ça peut être fait avec ::"
|
||||
|
||||
#: install/index.rst:412
|
||||
msgid ""
|
||||
|
@ -840,7 +840,7 @@ msgstr ""
|
|||
"lire : par exemple, l’interpréteur Python auquel on accède par :file:`/usr/"
|
||||
"local/bin/python` peut chercher les modules dans :file:`/usr/local/lib/"
|
||||
"python2.{X}`, mais ces modules doivent être installés dans, par exemple, :"
|
||||
"file:`/mnt/{@server}/export/lib/python2.{X}`. Ça peut être fait avec ::"
|
||||
"file:`/mnt/{@server}/export/lib/python2.{X}`. Ça peut être fait avec ::"
|
||||
|
||||
#: install/index.rst:421
|
||||
msgid ""
|
||||
|
@ -1110,7 +1110,7 @@ msgstr ""
|
|||
|
||||
#: install/index.rst:574
|
||||
msgid "or, equivalently, ::"
|
||||
msgstr "ou ::"
|
||||
msgstr "ou ::"
|
||||
|
||||
#: install/index.rst:582
|
||||
msgid ""
|
||||
|
|
|
@ -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: 2022-02-23 18:50+0100\n"
|
||||
"Last-Translator: Jules Lasne <jules.lasne@gmail.com>\n"
|
||||
"PO-Revision-Date: 2023-03-26 12:02+0200\n"
|
||||
"Last-Translator: Mathieu Dupuy\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.1\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
|
||||
#: installing/index.rst:7
|
||||
msgid "Installing Python Modules"
|
||||
|
@ -407,14 +407,14 @@ msgstr ""
|
|||
"est ::"
|
||||
|
||||
#: installing/index.rst:216
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"There are also additional resources for `installing pip. <https://packaging."
|
||||
"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>`__"
|
||||
"Il existe également des ressources supplémentaires pour `installer pip. "
|
||||
"<https://packaging.python.org/en/latest/tutorials/installing-packages/"
|
||||
"#ensure-pip-setuptools-and-wheel-are-up-to-date>`__"
|
||||
|
||||
#: installing/index.rst:221
|
||||
msgid "Installing binary extensions"
|
||||
|
|
|
@ -72,7 +72,7 @@ msgstr "Voici un exemple de fichier source Python 2.x, :file:`example.py` ::"
|
|||
#: library/2to3.rst:39
|
||||
msgid "It can be converted to Python 3.x code via 2to3 on the command line:"
|
||||
msgstr ""
|
||||
"Il peut être converti en code Python 3.x par *2to3* en ligne de commande :"
|
||||
"Il peut être converti en code Python 3.x par *2to3* en ligne de commande :"
|
||||
|
||||
#: library/2to3.rst:45
|
||||
msgid ""
|
||||
|
@ -85,7 +85,7 @@ msgstr ""
|
|||
"aussi écrire les modifications nécessaires directement dans le fichier "
|
||||
"source. (Une sauvegarde du fichier d'origine est effectuée à moins que "
|
||||
"l'option :option:`!-n` soit également donnée.) L'écriture des modifications "
|
||||
"est activée avec l'option :option:`!-w` :"
|
||||
"est activée avec l'option :option:`!-w` :"
|
||||
|
||||
#: library/2to3.rst:54
|
||||
msgid "After transformation, :file:`example.py` looks like this::"
|
||||
|
@ -112,12 +112,12 @@ msgstr ""
|
|||
"Un ensemble explicite de correcteurs à exécuter peut être donné avec :option:"
|
||||
"`!-f`. De même, :option:`!-x` désactive explicitement un correcteur. "
|
||||
"L'exemple suivant exécute uniquement les ``import`` et les correcteurs "
|
||||
"``has_key`` :"
|
||||
"``has_key`` :"
|
||||
|
||||
#: library/2to3.rst:73
|
||||
msgid "This command runs every fixer except the ``apply`` fixer:"
|
||||
msgstr ""
|
||||
"Cette commande exécute tous les correcteurs, sauf le correcteurs ``apply`` :"
|
||||
"Cette commande exécute tous les correcteurs, sauf le correcteurs ``apply`` :"
|
||||
|
||||
#: library/2to3.rst:79
|
||||
msgid ""
|
||||
|
@ -128,7 +128,7 @@ msgstr ""
|
|||
"Certains correcteurs sont *explicites*, ce qui signifie qu'ils ne sont pas "
|
||||
"exécutés par défaut et doivent être énumérés sur la ligne de commande à "
|
||||
"exécuter. Ici, en plus des correcteurs par défaut, le correcteur ``idioms`` "
|
||||
"est exécuté :"
|
||||
"est exécuté :"
|
||||
|
||||
#: library/2to3.rst:87
|
||||
msgid "Notice how passing ``all`` enables all default fixers."
|
||||
|
@ -233,7 +233,7 @@ msgstr ""
|
|||
"L'option :option:`!--add-suffix` spécifie une chaîne à ajouter à tous les "
|
||||
"noms de fichiers de sortie. L'option :option:`!-n` est nécessaire dans ce "
|
||||
"cas, puisque sauvegarder n'est pas nécessaire en écrivant dans des fichiers "
|
||||
"différents. Exemple:"
|
||||
"différents. Exemple :"
|
||||
|
||||
#: library/2to3.rst:135
|
||||
msgid "Will cause a converted file named ``example.py3`` to be written."
|
||||
|
@ -247,7 +247,7 @@ msgstr "L'option :option:`!--add-suffix` est ajoutée."
|
|||
msgid "To translate an entire project from one directory tree to another use:"
|
||||
msgstr ""
|
||||
"Pour traduire un projet entier d'une arborescence de répertoires à une "
|
||||
"autre, utilisez :"
|
||||
"autre, utilisez :"
|
||||
|
||||
#: library/2to3.rst:150
|
||||
msgid "Fixers"
|
||||
|
@ -589,7 +589,7 @@ msgstr ""
|
|||
"Convertit les appels à diverses fonctions du module :mod:`operator` en "
|
||||
"appels d'autres fonctions équivalentes. Si besoin, les instructions "
|
||||
"``import`` appropriées sont ajoutées, e.g. ``import collections.abc``. Les "
|
||||
"correspondances suivantes sont appliquées :"
|
||||
"correspondances suivantes sont appliquées :"
|
||||
|
||||
#: library/2to3.rst:358
|
||||
msgid "``operator.isCallable(obj)``"
|
||||
|
|
|
@ -26,7 +26,7 @@ msgstr "**Source code:** :source:`Lib/_future_.py`"
|
|||
#: library/__future__.rst:11
|
||||
msgid ":mod:`__future__` is a real module, and serves three purposes:"
|
||||
msgstr ""
|
||||
"Le module :mod:`__future__` est un vrai module, et il a trois objectifs :"
|
||||
"Le module :mod:`__future__` est un vrai module, et il a trois objectifs :"
|
||||
|
||||
#: library/__future__.rst:13
|
||||
msgid ""
|
||||
|
@ -139,7 +139,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Aucune fonctionnalité ne sera jamais supprimée de :mod:`__future__`. Depuis "
|
||||
"son introduction dans Python 2.1, les fonctionnalités suivantes ont trouvé "
|
||||
"leur places dans le langage utilisant ce mécanisme :"
|
||||
"leur places dans le langage utilisant ce mécanisme :"
|
||||
|
||||
#: library/__future__.rst:67
|
||||
msgid "feature"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-03-23 18:39+0100\n"
|
||||
"POT-Creation-Date: 2023-04-14 13:19+0200\n"
|
||||
"PO-Revision-Date: 2022-05-18 13:39+0200\n"
|
||||
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -64,7 +64,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Lorsqu'un module ou un paquet Python est importé, son attribut ``__name__`` "
|
||||
"est défini à son nom, qui est la plupart du temps le nom du fichier qui le "
|
||||
"contient sans l'extension ``.py`` :"
|
||||
"contient sans l'extension ``.py`` ::"
|
||||
|
||||
#: library/__main__.rst:35
|
||||
msgid ""
|
||||
|
@ -72,7 +72,7 @@ msgid ""
|
|||
"package's path::"
|
||||
msgstr ""
|
||||
"Si le fichier fait partie d'un paquet, ``__name__`` donne tout le chemin "
|
||||
"d'accès :"
|
||||
"d'accès ::"
|
||||
|
||||
#: library/__main__.rst:42
|
||||
msgid ""
|
||||
|
@ -106,7 +106,7 @@ msgstr "L'environnement principal peut prendre diverses formes :"
|
|||
|
||||
#: library/__main__.rst:55
|
||||
msgid "the scope of an interactive prompt::"
|
||||
msgstr "l'environnement d'une invite de commande interactive :"
|
||||
msgstr "l'environnement d'une invite de commande interactive ::"
|
||||
|
||||
#: library/__main__.rst:60
|
||||
msgid "the Python module passed to the Python interpreter as a file argument:"
|
||||
|
@ -196,7 +196,7 @@ msgstr ""
|
|||
"Il vaut mieux mettre aussi peu de code que possible sous le ``if __name__ == "
|
||||
"'__main__'`` pour garder le code clair et limiter les risques d'erreur. La "
|
||||
"plupart du temps, on écrit une fonction ``main`` qui contient tout le code "
|
||||
"spécifique à l'utilisation comme script :"
|
||||
"spécifique à l'utilisation comme script ::"
|
||||
|
||||
#: library/__main__.rst:151
|
||||
msgid ""
|
||||
|
@ -241,7 +241,7 @@ msgstr ""
|
|||
"d'entrée, qui demandent à `pip <https://pip.pypa.io/>`_ de créer un "
|
||||
"exécutable. Il le fait en insérant un appel à la fonction à l'intérieur d'un "
|
||||
"modèle prédéfini où la valeur qu'elle renvoie est passée directement à :func:"
|
||||
"`sys.exit` :"
|
||||
"`sys.exit` ::"
|
||||
|
||||
#: library/__main__.rst:175
|
||||
msgid ""
|
||||
|
@ -363,7 +363,7 @@ msgstr ""
|
|||
"Cependant, un ``if __name__ == '__main__'``, s'il est présent dans le "
|
||||
"``__main__.py``, fonctionne correctement. En effet, si ``__main__.py`` est "
|
||||
"importé depuis autre module, son attribut ``__name__`` contient, avant "
|
||||
"``__main__``, le nom du paquet dont il fait partie :"
|
||||
"``__main__``, le nom du paquet dont il fait partie ::"
|
||||
|
||||
#: library/__main__.rst:254
|
||||
msgid ""
|
||||
|
@ -376,10 +376,11 @@ msgstr ""
|
|||
"py`` dans le style minimal de celui de :mod:`venv` mentionné ci-dessus."
|
||||
|
||||
#: library/__main__.rst:260
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"See :mod:`venv` for an example of a package with a minimal ``__main__.py`` "
|
||||
"in the standard library. It doesn't contain a ``if __name__ == '__main__'`` "
|
||||
"block. You can invoke it with ``python3 -m venv [directory]``."
|
||||
"block. You can invoke it with ``python -m venv [directory]``."
|
||||
msgstr ""
|
||||
"Le module :mod:`venv` de la bibliothèque standard est un exemple de paquet "
|
||||
"contenant un fichier ``__main__.py`` minimal, sans ``if __name__ == "
|
||||
|
@ -424,11 +425,11 @@ msgstr ""
|
|||
|
||||
#: library/__main__.rst:282
|
||||
msgid "Here is an example module that consumes the ``__main__`` namespace::"
|
||||
msgstr "Voici un exemple d'utilisation du module ``__main__`` :"
|
||||
msgstr "Voici un exemple d'utilisation du module ``__main__`` ::"
|
||||
|
||||
#: library/__main__.rst:300
|
||||
msgid "Example usage of this module could be as follows::"
|
||||
msgstr "Ce code s'utilise comme ceci :"
|
||||
msgstr "Ce code s'utilise comme ceci ::"
|
||||
|
||||
#: library/__main__.rst:319
|
||||
msgid "Now, if we started our program, the result would look like this:"
|
||||
|
@ -488,7 +489,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"L'interpréteur interactif est un autre environnement d'exécution principal "
|
||||
"possible. Toute variable qui y est définie appartient à l'espace de nommage "
|
||||
"``__main__`` :"
|
||||
"``__main__`` ::"
|
||||
|
||||
#: library/__main__.rst:364
|
||||
msgid ""
|
||||
|
|
|
@ -330,7 +330,7 @@ msgid ""
|
|||
"`with` statement, e.g.::"
|
||||
msgstr ""
|
||||
"En plus de ces méthodes, les objets verrous peuvent aussi être utilisés via "
|
||||
"l'instruction :keyword:`with`, e.g. ::"
|
||||
"l'instruction :keyword:`with`, e.g ::"
|
||||
|
||||
#: library/_thread.rst:207
|
||||
msgid "**Caveats:**"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2023-04-14 13:19+0200\n"
|
||||
"PO-Revision-Date: 2022-11-20 22:28+0100\n"
|
||||
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -40,12 +40,13 @@ msgstr ""
|
|||
"abstraite."
|
||||
|
||||
#: library/abc.rst:20
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"The :mod:`collections` module has some concrete classes that derive from "
|
||||
"ABCs; these can, of course, be further derived. In addition, the :mod:"
|
||||
"`collections.abc` submodule has some ABCs that can be used to test whether a "
|
||||
"class or instance provides a particular interface, for example, if it is "
|
||||
"hashable or if it is a mapping."
|
||||
"class or instance provides a particular interface, for example, if it is :"
|
||||
"term:`hashable` or if it is a mapping."
|
||||
msgstr ""
|
||||
"Le module :mod:`collections` possède certaines classes concrètes qui "
|
||||
"dérivent d'ABC. Celles-ci peuvent, bien sur, être elles-mêmes dérivées. De "
|
||||
|
|
|
@ -57,7 +57,7 @@ msgstr ""
|
|||
|
||||
#: library/aifc.rst:40
|
||||
msgid "Module :mod:`aifc` defines the following function:"
|
||||
msgstr "Le module :mod:`aifc` définit les fonctions suivantes :"
|
||||
msgstr "Le module :mod:`aifc` définit les fonctions suivantes :"
|
||||
|
||||
#: library/aifc.rst:45
|
||||
msgid ""
|
||||
|
|
|
@ -30,4 +30,4 @@ msgstr ""
|
|||
"fonctionnalités communes à la grande majorité des systèmes d'exploitation, "
|
||||
"telles que les fichiers et l'horloge. Bien que ces interfaces soient "
|
||||
"classiquement calquées sur les interfaces Unix ou C, elles sont aussi "
|
||||
"disponibles sur la plupart des autres systèmes. En voici un aperçu."
|
||||
"disponibles sur la plupart des autres systèmes. En voici un aperçu :"
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -218,7 +218,7 @@ msgstr ""
|
|||
#: library/array.rst:65
|
||||
#, fuzzy
|
||||
msgid "The module defines the following item:"
|
||||
msgstr "Le module définit le type suivant :"
|
||||
msgstr "Le module définit le type suivant :"
|
||||
|
||||
#: library/array.rst:70
|
||||
msgid "A string with all available type codes."
|
||||
|
@ -226,7 +226,7 @@ msgstr "Une chaîne avec tous les codes de types disponibles."
|
|||
|
||||
#: library/array.rst:73
|
||||
msgid "The module defines the following type:"
|
||||
msgstr "Le module définit le type suivant :"
|
||||
msgstr "Le module définit le type suivant :"
|
||||
|
||||
#: library/array.rst:78
|
||||
msgid ""
|
||||
|
@ -532,7 +532,7 @@ msgstr ""
|
|||
|
||||
#~ msgid "The following data items and methods are also supported:"
|
||||
#~ msgstr ""
|
||||
#~ "Les éléments de données et méthodes suivants sont également supportés :"
|
||||
#~ "Les éléments de données et méthodes suivants sont également supportés :"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Return the smallest *i* such that *i* is the index of the first "
|
||||
|
|
|
@ -193,11 +193,11 @@ msgid ""
|
|||
"use ::"
|
||||
msgstr ""
|
||||
"Par exemple, pour créer et peupler un nœud :class:`ast.UnaryOp`, on peut "
|
||||
"utiliser ::"
|
||||
"utiliser ::"
|
||||
|
||||
#: library/ast.rst:115
|
||||
msgid "or the more compact ::"
|
||||
msgstr "ou, plus compact ::"
|
||||
msgstr "ou, plus compact ::"
|
||||
|
||||
#: library/ast.rst:122
|
||||
msgid "Class :class:`ast.Constant` is now used for all constants."
|
||||
|
@ -1231,7 +1231,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"À part les classes de nœuds, le module :mod:`ast` définit plusieurs "
|
||||
"fonctions et classes utilitaires pour traverser les arbres syntaxiques "
|
||||
"abstraits."
|
||||
"abstraits :"
|
||||
|
||||
#: library/ast.rst:1927
|
||||
msgid ""
|
||||
|
@ -1638,7 +1638,7 @@ msgstr ""
|
|||
"Si :class:`NodeTransformer` ajoute de nouveaux nœuds à l'original sans leur "
|
||||
"donner les attributs de position dans la source (:attr:`lineno` et "
|
||||
"consorts), il faut passer le nouvel arbre (ou la nouvelle partie de l'arbre) "
|
||||
"à :func:`fix_missing_locations` pour calculer les positions manquantes :"
|
||||
"à :func:`fix_missing_locations` pour calculer les positions manquantes ::"
|
||||
|
||||
#: library/ast.rst:2170
|
||||
msgid "Usually you use the transformer like this::"
|
||||
|
@ -1695,7 +1695,7 @@ msgid ""
|
|||
"effects on the compilation of a program:"
|
||||
msgstr ""
|
||||
"Les options suivantes sont prises en charge par la fonction :func:`compile`. "
|
||||
"Elles permettent de modifier le comportement de la compilation."
|
||||
"Elles permettent de modifier le comportement de la compilation :"
|
||||
|
||||
#: library/ast.rst:2206
|
||||
msgid ""
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -92,7 +92,7 @@ msgstr "Sujets de stratégie"
|
|||
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:"
|
||||
"définie comme suit :"
|
||||
|
||||
#: library/asyncio-policy.rst:59
|
||||
msgid "An abstract base class for asyncio policies."
|
||||
|
|
|
@ -284,7 +284,7 @@ msgstr ""
|
|||
|
||||
#: library/asyncio-protocol.rst:199
|
||||
msgid "SSL socket:"
|
||||
msgstr "Connecteur (*socket* en anglais) SSL :"
|
||||
msgstr "Connecteur (*socket* en anglais) SSL :"
|
||||
|
||||
#: library/asyncio-protocol.rst:201
|
||||
msgid ""
|
||||
|
@ -778,7 +778,7 @@ msgstr ""
|
|||
|
||||
#: library/asyncio-protocol.rst:578 library/asyncio-protocol.rst:636
|
||||
msgid "State machine:"
|
||||
msgstr "Machine à états :"
|
||||
msgstr "Machine à états :"
|
||||
|
||||
#: library/asyncio-protocol.rst:589
|
||||
msgid "Buffered Streaming Protocols"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-02-12 11:56+0100\n"
|
||||
"POT-Creation-Date: 2023-04-14 13:19+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"
|
||||
|
@ -192,63 +192,73 @@ msgid ""
|
|||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:209
|
||||
msgid ""
|
||||
"Read up to *n* bytes. If *n* is not provided, or set to ``-1``, read until "
|
||||
"EOF and return all read bytes."
|
||||
msgid "Read up to *n* bytes from the stream."
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:212
|
||||
#: library/asyncio-stream.rst:211
|
||||
msgid ""
|
||||
"If EOF was received and the internal buffer is empty, return an empty "
|
||||
"``bytes`` object."
|
||||
"If *n* is not provided or set to ``-1``, read until EOF, then return all "
|
||||
"read :class:`bytes`. If EOF was received and the internal buffer is empty, "
|
||||
"return an empty ``bytes`` object."
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:217
|
||||
#: library/asyncio-stream.rst:216
|
||||
msgid "If *n* is ``0``, return an empty ``bytes`` object immediately."
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:218
|
||||
msgid ""
|
||||
"If *n* is positive, return at most *n* available ``bytes`` as soon as at "
|
||||
"least 1 byte is available in the internal buffer. If EOF is received before "
|
||||
"any byte is read, return an empty ``bytes`` object."
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:225
|
||||
msgid ""
|
||||
"Read one line, where \"line\" is a sequence of bytes ending with ``\\n``."
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:220
|
||||
#: library/asyncio-stream.rst:228
|
||||
msgid ""
|
||||
"If EOF is received and ``\\n`` was not found, the method returns partially "
|
||||
"read data."
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:223
|
||||
#: library/asyncio-stream.rst:231
|
||||
msgid ""
|
||||
"If EOF is received and the internal buffer is empty, return an empty "
|
||||
"``bytes`` object."
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:228
|
||||
#: library/asyncio-stream.rst:236
|
||||
msgid "Read exactly *n* bytes."
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:230
|
||||
#: library/asyncio-stream.rst:238
|
||||
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:236
|
||||
#: library/asyncio-stream.rst:244
|
||||
msgid "Read data from the stream until *separator* is found."
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:238
|
||||
#: library/asyncio-stream.rst:246
|
||||
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:242
|
||||
#: library/asyncio-stream.rst:250
|
||||
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:246
|
||||
#: library/asyncio-stream.rst:254
|
||||
msgid ""
|
||||
"If EOF is reached before the complete separator is found, an :exc:"
|
||||
"`IncompleteReadError` exception is raised, and the internal buffer is "
|
||||
|
@ -256,79 +266,79 @@ msgid ""
|
|||
"portion of the separator."
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:255
|
||||
#: library/asyncio-stream.rst:263
|
||||
msgid "Return ``True`` if the buffer is empty and :meth:`feed_eof` was called."
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:260
|
||||
#: library/asyncio-stream.rst:268
|
||||
msgid "StreamWriter"
|
||||
msgstr "StreamWriter"
|
||||
|
||||
#: library/asyncio-stream.rst:264
|
||||
#: library/asyncio-stream.rst:272
|
||||
msgid ""
|
||||
"Represents a writer object that provides APIs to write data to the IO stream."
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:267
|
||||
#: library/asyncio-stream.rst:275
|
||||
msgid ""
|
||||
"It is not recommended to instantiate *StreamWriter* objects directly; use :"
|
||||
"func:`open_connection` and :func:`start_server` instead."
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:273
|
||||
#: library/asyncio-stream.rst:281
|
||||
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:289
|
||||
#: library/asyncio-stream.rst:297
|
||||
msgid "The method should be used along with the ``drain()`` method::"
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:284
|
||||
#: library/asyncio-stream.rst:292
|
||||
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:296
|
||||
#: library/asyncio-stream.rst:304
|
||||
msgid "The method closes the stream and the underlying socket."
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:298
|
||||
#: library/asyncio-stream.rst:306
|
||||
msgid ""
|
||||
"The method should be used, though not mandatory, along with the "
|
||||
"``wait_closed()`` method::"
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:306
|
||||
#: library/asyncio-stream.rst:314
|
||||
msgid ""
|
||||
"Return ``True`` if the underlying transport supports the :meth:`write_eof` "
|
||||
"method, ``False`` otherwise."
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:311
|
||||
#: library/asyncio-stream.rst:319
|
||||
msgid ""
|
||||
"Close the write end of the stream after the buffered write data is flushed."
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:316
|
||||
#: library/asyncio-stream.rst:324
|
||||
msgid "Return the underlying asyncio transport."
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:320
|
||||
#: library/asyncio-stream.rst:328
|
||||
msgid ""
|
||||
"Access optional transport information; see :meth:`BaseTransport."
|
||||
"get_extra_info` for details."
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:325
|
||||
#: library/asyncio-stream.rst:333
|
||||
msgid "Wait until it is appropriate to resume writing to the stream. Example::"
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:331
|
||||
#: library/asyncio-stream.rst:339
|
||||
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()* "
|
||||
|
@ -337,116 +347,116 @@ msgid ""
|
|||
"`drain` returns immediately."
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:341
|
||||
#: library/asyncio-stream.rst:349
|
||||
msgid "Upgrade an existing stream-based connection to TLS."
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:343
|
||||
#: library/asyncio-stream.rst:351
|
||||
msgid "Parameters:"
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:345
|
||||
#: library/asyncio-stream.rst:353
|
||||
msgid "*sslcontext*: a configured instance of :class:`~ssl.SSLContext`."
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:347
|
||||
#: library/asyncio-stream.rst:355
|
||||
msgid ""
|
||||
"*server_hostname*: sets or overrides the host name that the target server's "
|
||||
"certificate will be matched against."
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:350
|
||||
#: library/asyncio-stream.rst:358
|
||||
msgid ""
|
||||
"*ssl_handshake_timeout* is the time in seconds to wait for the TLS handshake "
|
||||
"to complete before aborting the connection. ``60.0`` seconds if ``None`` "
|
||||
"(default)."
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:358
|
||||
#: library/asyncio-stream.rst:366
|
||||
msgid ""
|
||||
"Return ``True`` if the stream is closed or in the process of being closed."
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:365
|
||||
#: library/asyncio-stream.rst:373
|
||||
msgid "Wait until the stream is closed."
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:367
|
||||
#: library/asyncio-stream.rst:375
|
||||
msgid ""
|
||||
"Should be called after :meth:`close` to wait until the underlying connection "
|
||||
"is closed, ensuring that all data has been flushed before e.g. exiting the "
|
||||
"program."
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:375
|
||||
#: library/asyncio-stream.rst:383
|
||||
msgid "Examples"
|
||||
msgstr "Exemples"
|
||||
|
||||
#: library/asyncio-stream.rst:380
|
||||
#: library/asyncio-stream.rst:388
|
||||
msgid "TCP echo client using streams"
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:382
|
||||
#: library/asyncio-stream.rst:390
|
||||
msgid "TCP echo client using the :func:`asyncio.open_connection` function::"
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:406
|
||||
#: library/asyncio-stream.rst:414
|
||||
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:413
|
||||
#: library/asyncio-stream.rst:421
|
||||
msgid "TCP echo server using streams"
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:415
|
||||
#: library/asyncio-stream.rst:423
|
||||
msgid "TCP echo server using the :func:`asyncio.start_server` function::"
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:449
|
||||
#: library/asyncio-stream.rst:457
|
||||
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:454
|
||||
#: library/asyncio-stream.rst:462
|
||||
msgid "Get HTTP headers"
|
||||
msgstr "Récupère les en-têtes HTTP"
|
||||
|
||||
#: library/asyncio-stream.rst:456
|
||||
#: library/asyncio-stream.rst:464
|
||||
msgid ""
|
||||
"Simple example querying HTTP headers of the URL passed on the command line::"
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:495
|
||||
#: library/asyncio-stream.rst:503
|
||||
msgid "Usage::"
|
||||
msgstr "Utilisation ::"
|
||||
|
||||
#: library/asyncio-stream.rst:499
|
||||
#: library/asyncio-stream.rst:507
|
||||
msgid "or with HTTPS::"
|
||||
msgstr "ou avec HTTPS ::"
|
||||
|
||||
#: library/asyncio-stream.rst:507
|
||||
#: library/asyncio-stream.rst:515
|
||||
msgid "Register an open socket to wait for data using streams"
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:509
|
||||
#: library/asyncio-stream.rst:517
|
||||
msgid ""
|
||||
"Coroutine waiting until a socket receives data using the :func:"
|
||||
"`open_connection` function::"
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-stream.rst:544
|
||||
#: library/asyncio-stream.rst:552
|
||||
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:548
|
||||
#: library/asyncio-stream.rst:556
|
||||
msgid ""
|
||||
"The :ref:`watch a file descriptor for read events "
|
||||
"<asyncio_example_watch_fd>` example uses the low-level :meth:`loop."
|
||||
|
|
|
@ -6,13 +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: 2018-10-15 00:37+0200\n"
|
||||
"PO-Revision-Date: 2023-03-19 14:41+0100\n"
|
||||
"Last-Translator: Julien Palard <julien@palard.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.1\n"
|
||||
|
||||
#: library/asyncio-subprocess.rst:7
|
||||
msgid "Subprocesses"
|
||||
|
@ -29,37 +30,45 @@ msgid ""
|
|||
"This section describes high-level async/await asyncio APIs to create and "
|
||||
"manage subprocesses."
|
||||
msgstr ""
|
||||
"Cette section décrit des API de haut niveau de *asyncio* pour créer et gérer "
|
||||
"des sous-processus via ``async``/``await``."
|
||||
|
||||
#: library/asyncio-subprocess.rst:19
|
||||
msgid ""
|
||||
"Here's an example of how asyncio can run a shell command and obtain its "
|
||||
"result::"
|
||||
msgstr ""
|
||||
"Voici un exemple de comment *asyncio* peut lancer une commande shell et "
|
||||
"obtenir son résultat ::"
|
||||
|
||||
#: library/asyncio-subprocess.rst:40
|
||||
#, fuzzy
|
||||
msgid "will print::"
|
||||
msgstr "affiche ::"
|
||||
|
||||
#: library/asyncio-subprocess.rst:46
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Because all asyncio subprocess functions are asynchronous and asyncio "
|
||||
"provides many tools to work with such functions, it is easy to execute and "
|
||||
"monitor multiple subprocesses in parallel. It is indeed trivial to modify "
|
||||
"the above example to run several commands simultaneously::"
|
||||
msgstr ""
|
||||
"Puisque toutes les fonctions à sous-processus d'*asyncio* sont synchrones et "
|
||||
"qu'*asyncio* fournit de nombreux outils pour travailler avec de telles "
|
||||
"fonctions, il est facile d'exécuter et de surveiller de nombreux processus "
|
||||
"en parallèle ::"
|
||||
|
||||
#: library/asyncio-subprocess.rst:58
|
||||
msgid "See also the `Examples`_ subsection."
|
||||
msgstr ""
|
||||
msgstr "Voir également la section `Exemples`_."
|
||||
|
||||
#: library/asyncio-subprocess.rst:62
|
||||
msgid "Creating Subprocesses"
|
||||
msgstr ""
|
||||
msgstr "Créer des sous-processus"
|
||||
|
||||
#: library/asyncio-subprocess.rst:67
|
||||
msgid "Create a subprocess."
|
||||
msgstr ""
|
||||
msgstr "Crée un sous-processus."
|
||||
|
||||
#: library/asyncio-subprocess.rst:69 library/asyncio-subprocess.rst:87
|
||||
msgid ""
|
||||
|
@ -67,20 +76,25 @@ msgid ""
|
|||
"wrappers for :attr:`Process.stdout` and :attr:`Process.stderr` (if :attr:"
|
||||
"`subprocess.PIPE` is passed to *stdout* and *stderr* arguments)."
|
||||
msgstr ""
|
||||
"Le paramètre *limit* définit la taille maximale du tampon pour les instances "
|
||||
"de :class:`StreamReader` encapsulant :attr:`Process.stdout` et :attr:"
|
||||
"`Process.stderr` (Si :attr:`subprocess.PIPE` est passé aux paramètres "
|
||||
"*stdout* et *stderr*)."
|
||||
|
||||
#: library/asyncio-subprocess.rst:73 library/asyncio-subprocess.rst:91
|
||||
msgid "Return a :class:`~asyncio.subprocess.Process` instance."
|
||||
msgstr ""
|
||||
msgstr "Renvoie une instance de :class:`~asyncio.subprocess.Process`."
|
||||
|
||||
#: library/asyncio-subprocess.rst:75
|
||||
msgid ""
|
||||
"See the documentation of :meth:`loop.subprocess_exec` for other parameters."
|
||||
msgstr ""
|
||||
"Voir la documentation de :meth:`loop.subprocess_exec` pour d'autres "
|
||||
"paramètres."
|
||||
|
||||
#: library/asyncio-subprocess.rst:78 library/asyncio-subprocess.rst:105
|
||||
#, fuzzy
|
||||
msgid "Removed the *loop* parameter."
|
||||
msgstr "Autres paramètres :"
|
||||
msgstr "Suppression du paramètre *loop*."
|
||||
|
||||
#: library/asyncio-subprocess.rst:85
|
||||
msgid "Run the *cmd* shell command."
|
||||
|
@ -90,6 +104,8 @@ msgstr "Exécute la commande *cmd* dans un *shell*."
|
|||
msgid ""
|
||||
"See the documentation of :meth:`loop.subprocess_shell` for other parameters."
|
||||
msgstr ""
|
||||
"Voir la documentation de :meth:`loop.subprocess_shell` pour d'autres "
|
||||
"paramètres."
|
||||
|
||||
#: library/asyncio-subprocess.rst:98
|
||||
msgid ""
|
||||
|
@ -100,6 +116,13 @@ msgid ""
|
|||
"escape whitespace and special shell characters in strings that are going to "
|
||||
"be used to construct shell commands."
|
||||
msgstr ""
|
||||
"Il est de la responsabilité de l'application de s'assurer que tous les "
|
||||
"espaces et les caractères spéciaux sont correctement mis entre guillemets "
|
||||
"pour éviter les vulnérabilités de type `injection de code <https://en."
|
||||
"wikipedia.org/wiki/Shell_injection#Shell_injection>`_. La fonction :func:"
|
||||
"`shlex.quote` peut être utilisée pour l’échappement des espaces et "
|
||||
"caractères spéciaux dans les chaînes utilisées pour construire des commandes "
|
||||
"shell."
|
||||
|
||||
#: library/asyncio-subprocess.rst:110
|
||||
msgid ""
|
||||
|
@ -107,8 +130,12 @@ msgid ""
|
|||
"used. See :ref:`Subprocess Support on Windows <asyncio-windows-subprocess>` "
|
||||
"for details."
|
||||
msgstr ""
|
||||
"Les sous-processus sont disponibles pour Windows si un :class:"
|
||||
"`ProactorEventLoop` est utilisé. Voir :ref:`Support des sous-processus sous "
|
||||
"Windows <asyncio-windows-subprocess>` pour plus de précisions."
|
||||
|
||||
#: library/asyncio-subprocess.rst:116
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"asyncio also has the following *low-level* APIs to work with subprocesses: :"
|
||||
"meth:`loop.subprocess_exec`, :meth:`loop.subprocess_shell`, :meth:`loop."
|
||||
|
@ -116,6 +143,8 @@ msgid ""
|
|||
"`Subprocess Transports <asyncio-subprocess-transports>` and :ref:`Subprocess "
|
||||
"Protocols <asyncio-subprocess-protocols>`."
|
||||
msgstr ""
|
||||
"*asyncio* propose aussi les API de « bas niveau » suivantes pour travailler "
|
||||
"avec les sous-processus :"
|
||||
|
||||
#: library/asyncio-subprocess.rst:124
|
||||
msgid "Constants"
|
||||
|
@ -123,7 +152,7 @@ msgstr "Constantes"
|
|||
|
||||
#: library/asyncio-subprocess.rst:129
|
||||
msgid "Can be passed to the *stdin*, *stdout* or *stderr* parameters."
|
||||
msgstr ""
|
||||
msgstr "Peut être passé aux paramètres *stdin*, *stdout* ou *stderr*."
|
||||
|
||||
#: library/asyncio-subprocess.rst:131
|
||||
msgid ""
|
||||
|
@ -131,6 +160,9 @@ msgid ""
|
|||
"subprocess.Process.stdin>` attribute will point to a :class:`StreamWriter` "
|
||||
"instance."
|
||||
msgstr ""
|
||||
"Si *PIPE* est passé au paramètre *stdin*, l'attribut :attr:`Process.stdin "
|
||||
"<asyncio.subprocess.Process.stdin>` ne pointera pas vers une instance de :"
|
||||
"class:`StreamWriter`."
|
||||
|
||||
#: library/asyncio-subprocess.rst:135
|
||||
msgid ""
|
||||
|
@ -139,12 +171,18 @@ msgid ""
|
|||
"<asyncio.subprocess.Process.stderr>` attributes will point to :class:"
|
||||
"`StreamReader` instances."
|
||||
msgstr ""
|
||||
"Si *PIPE* est passé au paramètre *stdout* ou *stderr* , l'attribut :attr:"
|
||||
"`Process.stdout <asyncio.subprocess.Process.stdout>` et :attr:`Process."
|
||||
"stderr <asyncio.subprocess.Process.stderr>` pointeront vers des instances "
|
||||
"de :class:`StreamReader`."
|
||||
|
||||
#: library/asyncio-subprocess.rst:143
|
||||
msgid ""
|
||||
"Special value that can be used as the *stderr* argument and indicates that "
|
||||
"standard error should be redirected into standard output."
|
||||
msgstr ""
|
||||
"Une valeur spéciale qui peut être passée au paramètre *stderr* et qui "
|
||||
"indique que la sortie d'erreur doit être redirigée vers la sortie standard."
|
||||
|
||||
#: library/asyncio-subprocess.rst:149
|
||||
msgid ""
|
||||
|
@ -152,10 +190,13 @@ msgid ""
|
|||
"to process creation functions. It indicates that the special file :data:`os."
|
||||
"devnull` will be used for the corresponding subprocess stream."
|
||||
msgstr ""
|
||||
"Une valeur spéciale qui peut être passée à l'argument *stdin*, *stdout* ou "
|
||||
"*stderr* des fonctions créant des processus. Elle implique l'utilisation du "
|
||||
"fichier :data:`os.devnull` pour le flux correspondant du processus."
|
||||
|
||||
#: library/asyncio-subprocess.rst:155
|
||||
msgid "Interacting with Subprocesses"
|
||||
msgstr ""
|
||||
msgstr "Interagir avec les sous-processus"
|
||||
|
||||
#: library/asyncio-subprocess.rst:157
|
||||
msgid ""
|
||||
|
@ -199,11 +240,13 @@ msgstr ""
|
|||
|
||||
#: library/asyncio-subprocess.rst:184
|
||||
msgid "the *universal_newlines* parameter is not supported."
|
||||
msgstr ""
|
||||
msgstr "le paramètre *universal_newlines* n'est pas pris en charge."
|
||||
|
||||
#: library/asyncio-subprocess.rst:186
|
||||
msgid "This class is :ref:`not thread safe <asyncio-multithreading>`."
|
||||
msgstr ""
|
||||
"Cette classe n'est :ref:`pas conçue pour un contexte multi-fils <asyncio-"
|
||||
"multithreading>`."
|
||||
|
||||
#: library/asyncio-subprocess.rst:188
|
||||
msgid ""
|
||||
|
@ -215,11 +258,11 @@ msgstr ""
|
|||
|
||||
#: library/asyncio-subprocess.rst:193
|
||||
msgid "Wait for the child process to terminate."
|
||||
msgstr ""
|
||||
msgstr "Attend que le sous processus s'arrête."
|
||||
|
||||
#: library/asyncio-subprocess.rst:195
|
||||
msgid "Set and return the :attr:`returncode` attribute."
|
||||
msgstr ""
|
||||
msgstr "Définit et renvoie l'attribut :attr:`returncode`."
|
||||
|
||||
#: library/asyncio-subprocess.rst:199
|
||||
msgid ""
|
||||
|
@ -228,32 +271,41 @@ msgid ""
|
|||
"pipe buffer to accept more data. Use the :meth:`communicate` method when "
|
||||
"using pipes to avoid this condition."
|
||||
msgstr ""
|
||||
"Cette méthode peut générer un interblocage quand ``stdout=PIPE`` ou "
|
||||
"``stderr=PIPE`` est utilisé et que le sous-processus génère tellement de "
|
||||
"sorties qu'il se bloque, dans l'attente que le tampon du tube côté OS "
|
||||
"accepte des données supplémentaires. Pour éviter cette situation, choisissez "
|
||||
"la méthode :meth:`communicate` quand vous utilisez des tubes."
|
||||
|
||||
#: library/asyncio-subprocess.rst:207
|
||||
msgid "Interact with process:"
|
||||
msgstr ""
|
||||
msgstr "Interagit avec le processus :"
|
||||
|
||||
#: library/asyncio-subprocess.rst:209
|
||||
msgid "send data to *stdin* (if *input* is not ``None``);"
|
||||
msgstr ""
|
||||
msgstr "envoie des données sur le *stdin* (si *input* n'est pas ``None``);"
|
||||
|
||||
#: library/asyncio-subprocess.rst:210
|
||||
msgid "read data from *stdout* and *stderr*, until EOF is reached;"
|
||||
msgstr ""
|
||||
"lit les données sur *stdout* et *stderr*, jusqu'à ce que le EOF soit "
|
||||
"atteint ;"
|
||||
|
||||
#: library/asyncio-subprocess.rst:211
|
||||
msgid "wait for process to terminate."
|
||||
msgstr ""
|
||||
msgstr "attend que le processus s'arrête."
|
||||
|
||||
#: library/asyncio-subprocess.rst:213
|
||||
msgid ""
|
||||
"The optional *input* argument is the data (:class:`bytes` object) that will "
|
||||
"be sent to the child process."
|
||||
msgstr ""
|
||||
"Le paramètre optionnel *input* (objet de type :class:`bytes`) représente les "
|
||||
"données transmises au sous-processus."
|
||||
|
||||
#: library/asyncio-subprocess.rst:216
|
||||
msgid "Return a tuple ``(stdout_data, stderr_data)``."
|
||||
msgstr ""
|
||||
msgstr "Renvoie un tuple ``(stdout_data, stderr_data)``."
|
||||
|
||||
#: library/asyncio-subprocess.rst:218
|
||||
msgid ""
|
||||
|
@ -284,15 +336,15 @@ msgid "Sends the signal *signal* to the child process."
|
|||
msgstr "Envoie le signal *signal* au sous-processus."
|
||||
|
||||
#: library/asyncio-subprocess.rst:238
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"On Windows, :py:data:`SIGTERM` is an alias for :meth:`terminate`. "
|
||||
"``CTRL_C_EVENT`` and ``CTRL_BREAK_EVENT`` can be sent to processes started "
|
||||
"with a *creationflags* parameter which includes ``CREATE_NEW_PROCESS_GROUP``."
|
||||
msgstr ""
|
||||
"Sous Windows, *SIGTERM* est un alias pour :meth:`terminate`. *CTRL_C_EVENT* "
|
||||
"et *CTRL_BREAK_EVENT* peuvent être envoyés aux processus démarrés avec un "
|
||||
"paramètre *creationflags* incluant `CREATE_NEW_PROCESS_GROUP`."
|
||||
"Sous Windows, :py:data:`SIGTERM` est un alias pour :meth:`terminate`. "
|
||||
"*CTRL_C_EVENT* et *CTRL_BREAK_EVENT* peuvent être envoyés aux processus "
|
||||
"démarrés avec un paramètre *creationflags* incluant "
|
||||
"``CREATE_NEW_PROCESS_GROUP``."
|
||||
|
||||
#: library/asyncio-subprocess.rst:245
|
||||
msgid "Stop the child process."
|
||||
|
@ -303,7 +355,7 @@ msgid ""
|
|||
"On POSIX systems this method sends :py:data:`signal.SIGTERM` to the child "
|
||||
"process."
|
||||
msgstr ""
|
||||
"Sur les systèmes POSIX, cette méthode envoie un :py:data:`signal.SIGTERM` au "
|
||||
"Sur les systèmes POSIX, cette méthode envoie :py:data:`signal.SIGTERM` au "
|
||||
"sous-processus."
|
||||
|
||||
#: library/asyncio-subprocess.rst:250
|
||||
|
@ -313,21 +365,19 @@ msgid ""
|
|||
msgstr ""
|
||||
|
||||
#: library/asyncio-subprocess.rst:255
|
||||
#, fuzzy
|
||||
msgid "Kill the child process."
|
||||
msgstr "Arrête le sous-processus."
|
||||
|
||||
#: library/asyncio-subprocess.rst:257
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"On POSIX systems this method sends :py:data:`SIGKILL` to the child process."
|
||||
msgstr ""
|
||||
"Sur les systèmes POSIX, cette méthode envoie un :py:data:`signal.SIGTERM` au "
|
||||
"Sur les systèmes POSIX, cette méthode envoie :py:data:`signal.SIGTERM` au "
|
||||
"sous-processus."
|
||||
|
||||
#: library/asyncio-subprocess.rst:260
|
||||
msgid "On Windows this method is an alias for :meth:`terminate`."
|
||||
msgstr ""
|
||||
msgstr "Sous Windows, cette méthode est un alias pour :meth:`terminate`."
|
||||
|
||||
#: library/asyncio-subprocess.rst:264
|
||||
msgid ""
|
||||
|
@ -358,6 +408,8 @@ msgstr ""
|
|||
#: library/asyncio-subprocess.rst:288
|
||||
msgid "Process identification number (PID)."
|
||||
msgstr ""
|
||||
"Numéro d'identification du processus (PID, pour *Process Identification "
|
||||
"Number* en anglais)."
|
||||
|
||||
#: library/asyncio-subprocess.rst:290
|
||||
msgid ""
|
||||
|
@ -367,7 +419,7 @@ msgstr ""
|
|||
|
||||
#: library/asyncio-subprocess.rst:295
|
||||
msgid "Return code of the process when it exits."
|
||||
msgstr ""
|
||||
msgstr "Code de retour du processus quand il se termine."
|
||||
|
||||
#: library/asyncio-subprocess.rst:297
|
||||
msgid "A ``None`` value indicates that the process has not terminated yet."
|
||||
|
@ -379,7 +431,7 @@ msgid ""
|
|||
"``N`` (POSIX only)."
|
||||
msgstr ""
|
||||
"Une valeur négative ``-N`` indique que le sous-processus a été terminé par "
|
||||
"un signal ``N`` (seulement sur les systèmes *POSIX*)."
|
||||
"le signal ``N`` (seulement sur les systèmes *POSIX*)."
|
||||
|
||||
#: library/asyncio-subprocess.rst:306
|
||||
msgid "Subprocess and Threads"
|
||||
|
@ -414,18 +466,25 @@ msgid ""
|
|||
"Spawning a subprocess with *inactive* current child watcher raises :exc:"
|
||||
"`RuntimeError`."
|
||||
msgstr ""
|
||||
"Instancier un sous-processus avec un observateur enfant actuel *inactif* "
|
||||
"lève l'exception :exc:`RuntimeError`."
|
||||
|
||||
#: library/asyncio-subprocess.rst:326
|
||||
msgid ""
|
||||
"Note that alternative event loop implementations might have own limitations; "
|
||||
"please refer to their documentation."
|
||||
msgstr ""
|
||||
"Notez que ces implémentations alternatives de la boucle d'événements peuvent "
|
||||
"comporter leurs propres limitations. Veuillez vous référer à leur "
|
||||
"documentation."
|
||||
|
||||
#: library/asyncio-subprocess.rst:331
|
||||
msgid ""
|
||||
"The :ref:`Concurrency and multithreading in asyncio <asyncio-"
|
||||
"multithreading>` section."
|
||||
msgstr ""
|
||||
"La section :ref:`Exécution concurrente et multi-fils d'exécution <asyncio-"
|
||||
"multithreading>`."
|
||||
|
||||
#: library/asyncio-subprocess.rst:336
|
||||
msgid "Examples"
|
||||
|
@ -437,14 +496,20 @@ msgid ""
|
|||
"subprocess and the :class:`StreamReader` class to read from its standard "
|
||||
"output."
|
||||
msgstr ""
|
||||
"Un exemple utilisant la classe :class:`~asyncio.subprocess.Process` pour "
|
||||
"contrôler un sous-processus et la classe :class:`StreamReader` pour lire sa "
|
||||
"sortie standard."
|
||||
|
||||
#: library/asyncio-subprocess.rst:344
|
||||
msgid ""
|
||||
"The subprocess is created by the :func:`create_subprocess_exec` function::"
|
||||
msgstr ""
|
||||
"Le sous-processus est créé par la fonction :func:`create_subprocess_exec` ::"
|
||||
|
||||
#: library/asyncio-subprocess.rst:371
|
||||
msgid ""
|
||||
"See also the :ref:`same example <asyncio_example_subprocess_proto>` written "
|
||||
"using low-level APIs."
|
||||
msgstr ""
|
||||
"Voir également :ref:`le même exemple <asyncio_example_subprocess_proto>`, "
|
||||
"écrit en utilisant des API de bas niveau."
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -65,7 +65,7 @@ msgstr ""
|
|||
#: library/asyncio.rst:32
|
||||
msgid "asyncio provides a set of **high-level** APIs to:"
|
||||
msgstr ""
|
||||
"``asyncio`` fournit des interfaces de programmation **haut-niveau** pour :"
|
||||
"``asyncio`` fournit des interfaces de programmation **haut-niveau** pour :"
|
||||
|
||||
#: library/asyncio.rst:34
|
||||
msgid ""
|
||||
|
@ -101,7 +101,7 @@ msgid ""
|
|||
"developers* to:"
|
||||
msgstr ""
|
||||
"En plus, il existe des bibliothèques de **bas-niveau** pour que les "
|
||||
"*développeurs de bibliothèques et de frameworks* puissent :"
|
||||
"*développeurs de bibliothèques et de frameworks* puissent :"
|
||||
|
||||
#: library/asyncio.rst:48
|
||||
msgid ""
|
||||
|
|
|
@ -56,7 +56,7 @@ msgid ""
|
|||
"public API of CPython:"
|
||||
msgstr ""
|
||||
"Les évènements suivants sont levés en interne et ne correspondent à aucune "
|
||||
"API publique de CPython:"
|
||||
"API publique de CPython :"
|
||||
|
||||
#: library/audit_events.rst:27
|
||||
#, fuzzy
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2023-04-14 13:19+0200\n"
|
||||
"PO-Revision-Date: 2022-10-18 15:43+0200\n"
|
||||
"Last-Translator: Julien Palard <julien@palard.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -106,7 +106,7 @@ msgstr ""
|
|||
|
||||
#: library/base64.rst:49
|
||||
msgid "The modern interface provides:"
|
||||
msgstr "L'interface moderne propose :"
|
||||
msgstr "L'interface moderne propose :"
|
||||
|
||||
#: library/base64.rst:53
|
||||
msgid ""
|
||||
|
@ -134,7 +134,7 @@ msgstr ""
|
|||
|
||||
#: library/base64.rst:61
|
||||
msgid ""
|
||||
"May assert or raise a a :exc:`ValueError` if the length of *altchars* is not "
|
||||
"May assert or raise a :exc:`ValueError` if the length of *altchars* is not "
|
||||
"2. Raises a :exc:`TypeError` if *altchars* is not a :term:`bytes-like "
|
||||
"object`."
|
||||
msgstr ""
|
||||
|
@ -438,7 +438,7 @@ msgstr ""
|
|||
|
||||
#: library/base64.rst:247
|
||||
msgid "The legacy interface:"
|
||||
msgstr "L'interface historique :"
|
||||
msgstr "L'interface historique :"
|
||||
|
||||
#: library/base64.rst:251
|
||||
msgid ""
|
||||
|
@ -493,7 +493,7 @@ msgstr ""
|
|||
|
||||
#: library/base64.rst:285
|
||||
msgid "An example usage of the module:"
|
||||
msgstr "Un exemple d'utilisation du module :"
|
||||
msgstr "Un exemple d'utilisation du module :"
|
||||
|
||||
#: library/base64.rst:298
|
||||
msgid "Security Considerations"
|
||||
|
|
|
@ -30,7 +30,7 @@ msgstr ""
|
|||
|
||||
#: library/bdb.rst:14
|
||||
msgid "The following exception is defined:"
|
||||
msgstr "L'exception suivante est définie :"
|
||||
msgstr "L'exception suivante est définie :"
|
||||
|
||||
#: library/bdb.rst:18
|
||||
msgid "Exception raised by the :class:`Bdb` class for quitting the debugger."
|
||||
|
@ -38,7 +38,7 @@ msgstr ""
|
|||
|
||||
#: library/bdb.rst:21
|
||||
msgid "The :mod:`bdb` module also defines two classes:"
|
||||
msgstr "Le module :mod:`bdb` définis deux classes :"
|
||||
msgstr "Le module :mod:`bdb` définis deux classes :"
|
||||
|
||||
#: library/bdb.rst:25
|
||||
msgid ""
|
||||
|
|
|
@ -260,7 +260,7 @@ msgstr ""
|
|||
"tableaux de nombres. Cet exemple utilise :func:`bisect` pour rechercher la "
|
||||
"note (sous forme de lettre) correspondant à une note sous forme de points, "
|
||||
"en se basant sur une échelle prédéfinie : plus de 90 vaut 'A', de 80 à 89 "
|
||||
"vaut 'B', etc. ::"
|
||||
"vaut 'B', etc ::"
|
||||
|
||||
#: library/bisect.rst:201
|
||||
msgid ""
|
||||
|
|
|
@ -554,7 +554,7 @@ msgstr ""
|
|||
|
||||
#: library/calendar.rst:385
|
||||
msgid "The :mod:`calendar` module exports the following data attributes:"
|
||||
msgstr "Le module :mod:`calendar` exporte les attributs suivants :"
|
||||
msgstr "Le module :mod:`calendar` exporte les attributs suivants :"
|
||||
|
||||
#: library/calendar.rst:389
|
||||
msgid "An array that represents the days of the week in the current locale."
|
||||
|
|
182
library/cmath.po
182
library/cmath.po
|
@ -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: 2023-04-14 13:19+0200\n"
|
||||
"PO-Revision-Date: 2019-05-28 20:19+0200\n"
|
||||
"Last-Translator: Jules Lasne <jules.lasne@gmail.com>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -39,23 +39,34 @@ msgstr ""
|
|||
|
||||
#: library/cmath.rst:18
|
||||
msgid ""
|
||||
"On platforms with hardware and system-level support for signed zeros, "
|
||||
"functions involving branch cuts are continuous on *both* sides of the branch "
|
||||
"cut: the sign of the zero distinguishes one side of the branch cut from the "
|
||||
"other. On platforms that do not support signed zeros the continuity is as "
|
||||
"specified below."
|
||||
"For functions involving branch cuts, we have the problem of deciding how to "
|
||||
"define those functions on the cut itself. Following Kahan's \"Branch cuts "
|
||||
"for complex elementary functions\" paper, as well as Annex G of C99 and "
|
||||
"later C standards, we use the sign of zero to distinguish one side of the "
|
||||
"branch cut from the other: for a branch cut along (a portion of) the real "
|
||||
"axis we look at the sign of the imaginary part, while for a branch cut along "
|
||||
"the imaginary axis we look at the sign of the real part."
|
||||
msgstr ""
|
||||
"Sur les plate-formes avec un support système et matériel des zéros signés, "
|
||||
"les fonctions incluant une coupure complexe sont continues *de chaque* côté "
|
||||
"de la coupure : le signe du zéro distingue les deux extrémités de la "
|
||||
"coupure. Sur les plate-formes ne supportant pas les zéros signés, la "
|
||||
"continuité est spécifiée en-dessous."
|
||||
|
||||
#: library/cmath.rst:26
|
||||
msgid ""
|
||||
"For example, the :func:`cmath.sqrt` function has a branch cut along the "
|
||||
"negative real axis. An argument of ``complex(-2.0, -0.0)`` is treated as "
|
||||
"though it lies *below* the branch cut, and so gives a result on the negative "
|
||||
"imaginary axis::"
|
||||
msgstr ""
|
||||
|
||||
#: library/cmath.rst:34
|
||||
msgid ""
|
||||
"But an argument of ``complex(-2.0, 0.0)`` is treated as though it lies above "
|
||||
"the branch cut::"
|
||||
msgstr ""
|
||||
|
||||
#: library/cmath.rst:42
|
||||
msgid "Conversions to and from polar coordinates"
|
||||
msgstr "Conversion vers et à partir de coordonnées polaires"
|
||||
|
||||
#: library/cmath.rst:28
|
||||
#: library/cmath.rst:44
|
||||
msgid ""
|
||||
"A Python complex number ``z`` is stored internally using *rectangular* or "
|
||||
"*Cartesian* coordinates. It is completely determined by its *real part* ``z."
|
||||
|
@ -65,7 +76,7 @@ msgstr ""
|
|||
"*cartésiennes*. Il est entièrement défini par sa *partie réelle* ``z.real`` "
|
||||
"et sa *partie complexe* ``z.imag``. En d'autres termes ::"
|
||||
|
||||
#: library/cmath.rst:35
|
||||
#: library/cmath.rst:51
|
||||
msgid ""
|
||||
"*Polar coordinates* give an alternative way to represent a complex number. "
|
||||
"In polar coordinates, a complex number *z* is defined by the modulus *r* and "
|
||||
|
@ -82,7 +93,7 @@ msgstr ""
|
|||
"trigonométrique), mesuré en radians, à partir de l'axe X positif, et vers le "
|
||||
"segment de droite joignant *z* à l'origine."
|
||||
|
||||
#: library/cmath.rst:42
|
||||
#: library/cmath.rst:58
|
||||
msgid ""
|
||||
"The following functions can be used to convert from the native rectangular "
|
||||
"coordinates to polar coordinates and back."
|
||||
|
@ -91,15 +102,14 @@ msgstr ""
|
|||
"coordonnées rectangulaires natives vers les coordonnées polaires, et vice-"
|
||||
"versa."
|
||||
|
||||
#: library/cmath.rst:47
|
||||
#: library/cmath.rst:63
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Return the phase of *x* (also known as the *argument* of *x*), as a float. "
|
||||
"Return the phase of *x* (also known as the *argument* of *x*), as a float. "
|
||||
"``phase(x)`` is equivalent to ``math.atan2(x.imag, x.real)``. The result "
|
||||
"lies in the range [-\\ *π*, *π*], and the branch cut for this operation lies "
|
||||
"along the negative real axis, continuous from above. On systems with "
|
||||
"support for signed zeros (which includes most systems in current use), this "
|
||||
"means that the sign of the result is the same as the sign of ``x.imag``, "
|
||||
"even when ``x.imag`` is zero::"
|
||||
"along the negative real axis. The sign of the result is the same as the "
|
||||
"sign of ``x.imag``, even when ``x.imag`` is zero::"
|
||||
msgstr ""
|
||||
"Renvoie l'argument de *x*, dans un nombre flottant. ``phase(x)`` est "
|
||||
"équivalent à ``math.atan2(x.imag, x.real)``. Le résultat se situe dans "
|
||||
|
@ -109,7 +119,7 @@ msgstr ""
|
|||
"utilisés actuellement), cela signifie que le signe du résultat est le même "
|
||||
"que ``x.imag`` même quand ``x.imag`` vaut zéro ::"
|
||||
|
||||
#: library/cmath.rst:64
|
||||
#: library/cmath.rst:77
|
||||
msgid ""
|
||||
"The modulus (absolute value) of a complex number *x* can be computed using "
|
||||
"the built-in :func:`abs` function. There is no separate :mod:`cmath` module "
|
||||
|
@ -119,7 +129,7 @@ msgstr ""
|
|||
"utilisant la primitive :func:`abs`. Il n'y a pas de fonction spéciale du "
|
||||
"module :mod:`cmath` pour cette opération."
|
||||
|
||||
#: library/cmath.rst:71
|
||||
#: library/cmath.rst:84
|
||||
msgid ""
|
||||
"Return the representation of *x* in polar coordinates. Returns a pair ``(r, "
|
||||
"phi)`` where *r* is the modulus of *x* and phi is the phase of *x*. "
|
||||
|
@ -129,7 +139,7 @@ msgstr ""
|
|||
"``(r, phi)`` où *r* est le module de *x* et phi est l'argument de *x*. "
|
||||
"``polar(x)`` est équivalent à ``(abs(x), phase(x))``."
|
||||
|
||||
#: library/cmath.rst:79
|
||||
#: library/cmath.rst:92
|
||||
msgid ""
|
||||
"Return the complex number *x* with polar coordinates *r* and *phi*. "
|
||||
"Equivalent to ``r * (math.cos(phi) + math.sin(phi)*1j)``."
|
||||
|
@ -137,11 +147,11 @@ msgstr ""
|
|||
"Renvoie le nombre complexe *x* dont les coordonnées polaires sont *r* et "
|
||||
"*phi*. Équivalent à ``r * (math.cos(phi) + math.sin(phi)*1j)``."
|
||||
|
||||
#: library/cmath.rst:84
|
||||
#: library/cmath.rst:97
|
||||
msgid "Power and logarithmic functions"
|
||||
msgstr "Fonctions logarithme et exponentielle"
|
||||
|
||||
#: library/cmath.rst:88
|
||||
#: library/cmath.rst:101
|
||||
msgid ""
|
||||
"Return *e* raised to the power *x*, where *e* is the base of natural "
|
||||
"logarithms."
|
||||
|
@ -149,18 +159,19 @@ msgstr ""
|
|||
"Renvoie *e* élevé à la puissance *x*, où *e* est la base des logarithmes "
|
||||
"naturels."
|
||||
|
||||
#: library/cmath.rst:94
|
||||
#: library/cmath.rst:107
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Returns the logarithm of *x* to the given *base*. If the *base* is not "
|
||||
"specified, returns the natural logarithm of *x*. There is one branch cut, "
|
||||
"from 0 along the negative real axis to -∞, continuous from above."
|
||||
"from 0 along the negative real axis to -∞."
|
||||
msgstr ""
|
||||
"Renvoie le logarithme de *x* dans la *base* précisée. Si la *base* n'est pas "
|
||||
"spécifiée, le logarithme *naturel* (népérien) de *x* est renvoyé. Il y a une "
|
||||
"coupure, partant de 0 sur l'axe réel négatif et vers ``-∞``, continue par au-"
|
||||
"dessus."
|
||||
|
||||
#: library/cmath.rst:101
|
||||
#: library/cmath.rst:114
|
||||
msgid ""
|
||||
"Return the base-10 logarithm of *x*. This has the same branch cut as :func:"
|
||||
"`log`."
|
||||
|
@ -168,106 +179,108 @@ msgstr ""
|
|||
"Renvoie le logarithme en base 10 de *x*. Elle a la même coupure que :func:"
|
||||
"`log`."
|
||||
|
||||
#: library/cmath.rst:107
|
||||
#: library/cmath.rst:120
|
||||
msgid ""
|
||||
"Return the square root of *x*. This has the same branch cut as :func:`log`."
|
||||
msgstr ""
|
||||
"Renvoie la racine carrée de *x*. Elle a la même coupure que :func:`log`."
|
||||
|
||||
#: library/cmath.rst:111
|
||||
#: library/cmath.rst:124
|
||||
msgid "Trigonometric functions"
|
||||
msgstr "Fonctions trigonométriques"
|
||||
|
||||
#: library/cmath.rst:115
|
||||
#: library/cmath.rst:128
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Return the arc cosine of *x*. There are two branch cuts: One extends right "
|
||||
"from 1 along the real axis to ∞, continuous from below. The other extends "
|
||||
"left from -1 along the real axis to -∞, continuous from above."
|
||||
"from 1 along the real axis to ∞. The other extends left from -1 along the "
|
||||
"real axis to -∞."
|
||||
msgstr ""
|
||||
"Renvoie l'arc cosinus de *x*. Il y a deux coupures : une allant de 1 sur "
|
||||
"l'axe réel vers ∞, continue par en-dessous ; l'autre allant de ``-1`` sur "
|
||||
"l'axe réel vers ``-∞``, continue par au-dessus."
|
||||
|
||||
#: library/cmath.rst:122
|
||||
#: library/cmath.rst:135
|
||||
msgid ""
|
||||
"Return the arc sine of *x*. This has the same branch cuts as :func:`acos`."
|
||||
msgstr ""
|
||||
"Renvoie l'arc sinus de *x*. Elle a les mêmes coupures que :func:`acos`."
|
||||
|
||||
#: library/cmath.rst:127
|
||||
#: library/cmath.rst:140
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Return the arc tangent of *x*. There are two branch cuts: One extends from "
|
||||
"``1j`` along the imaginary axis to ``∞j``, continuous from the right. The "
|
||||
"other extends from ``-1j`` along the imaginary axis to ``-∞j``, continuous "
|
||||
"from the left."
|
||||
"``1j`` along the imaginary axis to ``∞j``. The other extends from ``-1j`` "
|
||||
"along the imaginary axis to ``-∞j``."
|
||||
msgstr ""
|
||||
"Renvoie la tangente de *x*. l y a deux coupures : une allant de ``1j`` sur "
|
||||
"l'axe imaginaire vers ``∞j``, continue par la droite ; l'autre allant de "
|
||||
"``-1j`` sur l'axe imaginaire vers ``-∞j``, continue par la gauche."
|
||||
|
||||
#: library/cmath.rst:135
|
||||
#: library/cmath.rst:147
|
||||
msgid "Return the cosine of *x*."
|
||||
msgstr "Renvoie le cosinus de *x*."
|
||||
|
||||
#: library/cmath.rst:140
|
||||
#: library/cmath.rst:152
|
||||
msgid "Return the sine of *x*."
|
||||
msgstr "Renvoie le sinus de *x*."
|
||||
|
||||
#: library/cmath.rst:145
|
||||
#: library/cmath.rst:157
|
||||
msgid "Return the tangent of *x*."
|
||||
msgstr "Renvoie la tangente de *x*."
|
||||
|
||||
#: library/cmath.rst:149
|
||||
#: library/cmath.rst:161
|
||||
msgid "Hyperbolic functions"
|
||||
msgstr "Fonctions hyperboliques"
|
||||
|
||||
#: library/cmath.rst:153
|
||||
#: library/cmath.rst:165
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Return the inverse hyperbolic cosine of *x*. There is one branch cut, "
|
||||
"extending left from 1 along the real axis to -∞, continuous from above."
|
||||
"extending left from 1 along the real axis to -∞."
|
||||
msgstr ""
|
||||
"Renvoie l'arc cosinus hyperbolique de *x*. Il y a une coupure, allant de 1 "
|
||||
"sur l'axe réel vers ``-∞``, continue par au-dessus."
|
||||
|
||||
#: library/cmath.rst:159
|
||||
#: library/cmath.rst:171
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Return the inverse hyperbolic sine of *x*. There are two branch cuts: One "
|
||||
"extends from ``1j`` along the imaginary axis to ``∞j``, continuous from the "
|
||||
"right. The other extends from ``-1j`` along the imaginary axis to ``-∞j``, "
|
||||
"continuous from the left."
|
||||
"extends from ``1j`` along the imaginary axis to ``∞j``. The other extends "
|
||||
"from ``-1j`` along the imaginary axis to ``-∞j``."
|
||||
msgstr ""
|
||||
"Renvoie l'arc sinus hyperbolique de *x*. Il y a deux coupures : une allant "
|
||||
"de ``1j`` sur l'axe imaginaire vers ``∞j``, continue par la droite ; l'autre "
|
||||
"allant de ``-1j`` sur l'axe imaginaire vers ``∞j``, continue par la gauche."
|
||||
|
||||
#: library/cmath.rst:167
|
||||
#: library/cmath.rst:178
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Return the inverse hyperbolic tangent of *x*. There are two branch cuts: One "
|
||||
"extends from ``1`` along the real axis to ``∞``, continuous from below. The "
|
||||
"other extends from ``-1`` along the real axis to ``-∞``, continuous from "
|
||||
"above."
|
||||
"extends from ``1`` along the real axis to ``∞``. The other extends from "
|
||||
"``-1`` along the real axis to ``-∞``."
|
||||
msgstr ""
|
||||
"Renvoie l'arc tangente hyperbolique de *x*. Il y a deux coupures : une "
|
||||
"allant de ``1`` sur l'axe réel allant vers ``∞``, continue par en-dessous ; "
|
||||
"l'autre allant de ``-1`` sur l'axe réel vers ``-∞``, continue par au-dessus."
|
||||
|
||||
#: library/cmath.rst:175
|
||||
#: library/cmath.rst:185
|
||||
msgid "Return the hyperbolic cosine of *x*."
|
||||
msgstr "Renvoie le cosinus hyperbolique de *x*."
|
||||
|
||||
#: library/cmath.rst:180
|
||||
#: library/cmath.rst:190
|
||||
msgid "Return the hyperbolic sine of *x*."
|
||||
msgstr "Renvoie le sinus hyperbolique de *x*."
|
||||
|
||||
#: library/cmath.rst:185
|
||||
#: library/cmath.rst:195
|
||||
msgid "Return the hyperbolic tangent of *x*."
|
||||
msgstr "Renvoie la tangente hyperbolique de *x*."
|
||||
|
||||
#: library/cmath.rst:189
|
||||
#: library/cmath.rst:199
|
||||
msgid "Classification functions"
|
||||
msgstr "Fonctions de classifications"
|
||||
|
||||
#: library/cmath.rst:193
|
||||
#: library/cmath.rst:203
|
||||
msgid ""
|
||||
"Return ``True`` if both the real and imaginary parts of *x* are finite, and "
|
||||
"``False`` otherwise."
|
||||
|
@ -275,7 +288,7 @@ msgstr ""
|
|||
"Renvoie ``True`` si la partie réelle *et* la partie imaginaire de *x* sont "
|
||||
"finies, et ``False`` sinon."
|
||||
|
||||
#: library/cmath.rst:201
|
||||
#: library/cmath.rst:211
|
||||
msgid ""
|
||||
"Return ``True`` if either the real or the imaginary part of *x* is an "
|
||||
"infinity, and ``False`` otherwise."
|
||||
|
@ -283,7 +296,7 @@ msgstr ""
|
|||
"Renvoie ``True`` si soit la partie réelle *ou* la partie imaginaire de *x* "
|
||||
"est infinie, et ``False`` sinon."
|
||||
|
||||
#: library/cmath.rst:207
|
||||
#: library/cmath.rst:217
|
||||
msgid ""
|
||||
"Return ``True`` if either the real or the imaginary part of *x* is a NaN, "
|
||||
"and ``False`` otherwise."
|
||||
|
@ -291,7 +304,7 @@ msgstr ""
|
|||
"Renvoie ``True`` si soit la partie réelle *ou* la partie imaginaire de *x* "
|
||||
"est NaN, et ``False`` sinon."
|
||||
|
||||
#: library/cmath.rst:213
|
||||
#: library/cmath.rst:223
|
||||
msgid ""
|
||||
"Return ``True`` if the values *a* and *b* are close to each other and "
|
||||
"``False`` otherwise."
|
||||
|
@ -299,7 +312,7 @@ msgstr ""
|
|||
"Renvoie ``True`` si les valeurs *a* et *b* sont proches l'une de l'autre, et "
|
||||
"``False`` sinon."
|
||||
|
||||
#: library/cmath.rst:216
|
||||
#: library/cmath.rst:226
|
||||
msgid ""
|
||||
"Whether or not two values are considered close is determined according to "
|
||||
"given absolute and relative tolerances."
|
||||
|
@ -307,7 +320,7 @@ msgstr ""
|
|||
"Déterminer si deux valeurs sont proches se fait à l'aide des tolérances "
|
||||
"absolues et relatives données en paramètres."
|
||||
|
||||
#: library/cmath.rst:219
|
||||
#: library/cmath.rst:229
|
||||
msgid ""
|
||||
"*rel_tol* is the relative tolerance -- it is the maximum allowed difference "
|
||||
"between *a* and *b*, relative to the larger absolute value of *a* or *b*. "
|
||||
|
@ -322,7 +335,7 @@ msgstr ""
|
|||
"mêmes à partir de la 9\\ :sup:`e` décimale. *rel_tol* doit être supérieur à "
|
||||
"zéro."
|
||||
|
||||
#: library/cmath.rst:225
|
||||
#: library/cmath.rst:235
|
||||
msgid ""
|
||||
"*abs_tol* is the minimum absolute tolerance -- useful for comparisons near "
|
||||
"zero. *abs_tol* must be at least zero."
|
||||
|
@ -330,7 +343,7 @@ msgstr ""
|
|||
"*abs_tol* est la tolérance absolue minimale -- utile pour les comparaisons "
|
||||
"proches de zéro. *abs_tol* doit valoir au moins zéro."
|
||||
|
||||
#: library/cmath.rst:228
|
||||
#: library/cmath.rst:238
|
||||
msgid ""
|
||||
"If no errors occur, the result will be: ``abs(a-b) <= max(rel_tol * "
|
||||
"max(abs(a), abs(b)), abs_tol)``."
|
||||
|
@ -338,7 +351,7 @@ msgstr ""
|
|||
"Si aucune erreur n'est rencontrée, le résultat sera : ``abs(a-b) <= "
|
||||
"max(rel_tol * max(abs(a), abs(b)), abs_tol)``."
|
||||
|
||||
#: library/cmath.rst:231
|
||||
#: library/cmath.rst:241
|
||||
msgid ""
|
||||
"The IEEE 754 special values of ``NaN``, ``inf``, and ``-inf`` will be "
|
||||
"handled according to IEEE rules. Specifically, ``NaN`` is not considered "
|
||||
|
@ -351,32 +364,32 @@ msgstr ""
|
|||
"``NaN`` inclus. ``inf`` et ``-inf`` ne sont considérés proches que d'eux-"
|
||||
"mêmes."
|
||||
|
||||
#: library/cmath.rst:240
|
||||
#: library/cmath.rst:250
|
||||
msgid ":pep:`485` -- A function for testing approximate equality"
|
||||
msgstr ":pep:`485` -- Une fonction pour tester des égalités approximées"
|
||||
|
||||
#: library/cmath.rst:244
|
||||
#: library/cmath.rst:254
|
||||
msgid "Constants"
|
||||
msgstr "Constantes"
|
||||
|
||||
#: library/cmath.rst:248
|
||||
#: library/cmath.rst:258
|
||||
msgid "The mathematical constant *π*, as a float."
|
||||
msgstr "La constante mathématique *π*, en tant que flottant."
|
||||
|
||||
#: library/cmath.rst:253
|
||||
#: library/cmath.rst:263
|
||||
msgid "The mathematical constant *e*, as a float."
|
||||
msgstr "La constante mathématique *e*, en tant que flottant."
|
||||
|
||||
#: library/cmath.rst:258
|
||||
#: library/cmath.rst:268
|
||||
msgid "The mathematical constant *τ*, as a float."
|
||||
msgstr "La constante mathématique *τ*, sous forme de flottant."
|
||||
|
||||
#: library/cmath.rst:265
|
||||
#: library/cmath.rst:275
|
||||
msgid "Floating-point positive infinity. Equivalent to ``float('inf')``."
|
||||
msgstr ""
|
||||
"Nombre à virgule flottante positif infini. Équivaut à ``float('inf')``."
|
||||
|
||||
#: library/cmath.rst:272
|
||||
#: library/cmath.rst:282
|
||||
msgid ""
|
||||
"Complex number with zero real part and positive infinity imaginary part. "
|
||||
"Equivalent to ``complex(0.0, float('inf'))``."
|
||||
|
@ -384,7 +397,7 @@ msgstr ""
|
|||
"Nombre complexe dont la partie réelle vaut zéro et la partie imaginaire un "
|
||||
"infini positif. Équivalent à ``complex(0.0, float('inf'))``."
|
||||
|
||||
#: library/cmath.rst:280
|
||||
#: library/cmath.rst:290
|
||||
msgid ""
|
||||
"A floating-point \"not a number\" (NaN) value. Equivalent to "
|
||||
"``float('nan')``."
|
||||
|
@ -392,7 +405,7 @@ msgstr ""
|
|||
"Un nombre à virgule flottante *NaN* (*Not a number*). Équivalent à "
|
||||
"``float('nan')``."
|
||||
|
||||
#: library/cmath.rst:288
|
||||
#: library/cmath.rst:298
|
||||
msgid ""
|
||||
"Complex number with zero real part and NaN imaginary part. Equivalent to "
|
||||
"``complex(0.0, float('nan'))``."
|
||||
|
@ -400,7 +413,7 @@ msgstr ""
|
|||
"Nombre complexe dont la partie réelle vaut zéro et la partie imaginaire vaut "
|
||||
"un *NaN*. Équivalent à ``complex(0.0, float('nan'))``."
|
||||
|
||||
#: library/cmath.rst:296
|
||||
#: library/cmath.rst:306
|
||||
msgid ""
|
||||
"Note that the selection of functions is similar, but not identical, to that "
|
||||
"in module :mod:`math`. The reason for having two modules is that some users "
|
||||
|
@ -420,7 +433,7 @@ msgstr ""
|
|||
"toujours un nombre complexe, même si le résultat peut être exprimé à l'aide "
|
||||
"d'un nombre réel (en quel cas la partie imaginaire du complexe vaut zéro)."
|
||||
|
||||
#: library/cmath.rst:304
|
||||
#: library/cmath.rst:314
|
||||
msgid ""
|
||||
"A note on branch cuts: They are curves along which the given function fails "
|
||||
"to be continuous. They are a necessary feature of many complex functions. "
|
||||
|
@ -436,9 +449,9 @@ msgstr ""
|
|||
"fonctions complexes, vous comprendrez ce que sont les coupures. Consultez "
|
||||
"n'importe quel livre (pas trop élémentaire) sur les variables complexes pour "
|
||||
"plus d'informations. Pour des informations sur les choix des coupures à des "
|
||||
"fins numériques, voici une bonne référence :"
|
||||
"fins numériques, voici une bonne référence :"
|
||||
|
||||
#: library/cmath.rst:314
|
||||
#: library/cmath.rst:324
|
||||
msgid ""
|
||||
"Kahan, W: Branch cuts for complex elementary functions; or, Much ado about "
|
||||
"nothing's sign bit. In Iserles, A., and Powell, M. (eds.), The state of the "
|
||||
|
@ -447,3 +460,16 @@ msgstr ""
|
|||
"Kahan, W: Branch cuts for complex elementary functions; or, Much ado about "
|
||||
"nothing's sign bit. In Iserles, A., and Powell, M. (eds.), The state of the "
|
||||
"art in numerical analysis. Clarendon Press (1987) pp165--211."
|
||||
|
||||
#~ msgid ""
|
||||
#~ "On platforms with hardware and system-level support for signed zeros, "
|
||||
#~ "functions involving branch cuts are continuous on *both* sides of the "
|
||||
#~ "branch cut: the sign of the zero distinguishes one side of the branch cut "
|
||||
#~ "from the other. On platforms that do not support signed zeros the "
|
||||
#~ "continuity is as specified below."
|
||||
#~ msgstr ""
|
||||
#~ "Sur les plate-formes avec un support système et matériel des zéros "
|
||||
#~ "signés, les fonctions incluant une coupure complexe sont continues *de "
|
||||
#~ "chaque* côté de la coupure : le signe du zéro distingue les deux "
|
||||
#~ "extrémités de la coupure. Sur les plate-formes ne supportant pas les "
|
||||
#~ "zéros signés, la continuité est spécifiée en-dessous."
|
||||
|
|
|
@ -311,7 +311,7 @@ msgid ""
|
|||
"Instances of :class:`Cmd` subclasses have some public instance variables:"
|
||||
msgstr ""
|
||||
"Les instances de classes filles de :class:`Cmd` possèdent des variables "
|
||||
"d'instance publiques:"
|
||||
"d'instance publiques :"
|
||||
|
||||
#: library/cmd.rst:168
|
||||
msgid "The prompt issued to solicit input."
|
||||
|
@ -453,4 +453,4 @@ msgid ""
|
|||
msgstr ""
|
||||
"Voici une session d'exemple avec l'invite de commande *turtle*. Elle montre "
|
||||
"les fonctions d'aide, utilise les lignes vides pour répéter des commandes et "
|
||||
"montre l'utilitaire de *playback*:"
|
||||
"montre l'utilitaire de *playback* :"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2021-11-27 10:27+0100\n"
|
||||
"POT-Creation-Date: 2023-04-14 13:19+0200\n"
|
||||
"PO-Revision-Date: 2021-11-06 20:25+0100\n"
|
||||
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -39,11 +39,12 @@ msgstr ""
|
|||
|
||||
#: library/codeop.rst:20
|
||||
msgid "There are two parts to this job:"
|
||||
msgstr "Cette tâche se divise en deux parties :"
|
||||
msgstr "Cette tâche se divise en deux parties :"
|
||||
|
||||
#: library/codeop.rst:22
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Being able to tell if a line of input completes a Python statement: in "
|
||||
"Being able to tell if a line of input completes a Python statement: in "
|
||||
"short, telling whether to print '``>>>``' or '``...``' next."
|
||||
msgstr ""
|
||||
"Pouvoir affirmer qu'une ligne d'entrée est une instruction complète, ou "
|
||||
|
@ -51,8 +52,9 @@ msgstr ""
|
|||
"« ``...`` » à sa suite."
|
||||
|
||||
#: library/codeop.rst:25
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Remembering which future statements the user has entered, so subsequent "
|
||||
"Remembering which future statements the user has entered, so subsequent "
|
||||
"input can be compiled with these in effect."
|
||||
msgstr ""
|
||||
"Conserver les instructions déjà entrées par l'utilisateur, afin que les "
|
||||
|
@ -68,14 +70,15 @@ msgstr ""
|
|||
|
||||
#: library/codeop.rst:31
|
||||
msgid "To do just the former:"
|
||||
msgstr "Pour ne faire que la première partie :"
|
||||
msgstr "Pour ne faire que la première partie :"
|
||||
|
||||
#: library/codeop.rst:35
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Tries to compile *source*, which should be a string of Python code and "
|
||||
"return a code object if *source* is valid Python code. In that case, the "
|
||||
"return a code object if *source* is valid Python code. In that case, the "
|
||||
"filename attribute of the code object will be *filename*, which defaults to "
|
||||
"``'<input>'``. Returns ``None`` if *source* is *not* valid Python code, but "
|
||||
"``'<input>'``. Returns ``None`` if *source* is *not* valid Python code, but "
|
||||
"is a prefix of valid Python code."
|
||||
msgstr ""
|
||||
"Essaye de compiler *source*, qui doit être une chaîne de caractères "
|
||||
|
@ -95,11 +98,12 @@ msgstr ""
|
|||
"ou :exc:`ValueError` si un littéral invalide est rencontré."
|
||||
|
||||
#: library/codeop.rst:45
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"The *symbol* argument determines whether *source* is compiled as a statement "
|
||||
"(``'single'``, the default), as a sequence of statements (``'exec'``) or as "
|
||||
"an :term:`expression` (``'eval'``). Any other value will cause :exc:"
|
||||
"`ValueError` to be raised."
|
||||
"(``'single'``, the default), as a sequence of :term:`statement` (``'exec'``) "
|
||||
"or as an :term:`expression` (``'eval'``). Any other value will cause :exc:"
|
||||
"`ValueError` to be raised."
|
||||
msgstr ""
|
||||
"L'argument *symbol* détermine si *source* est compilée comme une instruction "
|
||||
"(``'single'``, par défaut), comme une suite d'instructions (``'exec'``), ou "
|
||||
|
@ -136,11 +140,13 @@ msgstr ""
|
|||
"sources suivants avec cette instruction activée."
|
||||
|
||||
#: library/codeop.rst:70
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Instances of this class have :meth:`__call__` methods identical in signature "
|
||||
"to :func:`compile_command`; the difference is that if the instance compiles "
|
||||
"program text containing a ``__future__`` statement, the instance 'remembers' "
|
||||
"and compiles all subsequent program texts with the statement in force."
|
||||
"program text containing a :mod:`__future__` statement, the instance "
|
||||
"'remembers' and compiles all subsequent program texts with the statement in "
|
||||
"force."
|
||||
msgstr ""
|
||||
"Les instances de cette classe ont des méthodes :meth:`__call__` de signature "
|
||||
"identique à la fonction :func:`compile_command`, à la différence près que si "
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-03-23 18:39+0100\n"
|
||||
"POT-Creation-Date: 2023-04-14 13:19+0200\n"
|
||||
"PO-Revision-Date: 2021-03-21 16:06+0100\n"
|
||||
"Last-Translator: Loc Cosnier <loc.cosnier@pm.me>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -30,10 +30,11 @@ msgid "**Source code:** :source:`Lib/_collections_abc.py`"
|
|||
msgstr "**Code source :** :source:`Lib/_collections_abc.py`"
|
||||
|
||||
#: library/collections.abc.rst:23
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"This module provides :term:`abstract base classes <abstract base class>` "
|
||||
"that can be used to test whether a class provides a particular interface; "
|
||||
"for example, whether it is hashable or whether it is a mapping."
|
||||
"for example, whether it is :term:`hashable` or whether it is a mapping."
|
||||
msgstr ""
|
||||
"Ce module fournit :term:`des classes de base abstraites <abstract base "
|
||||
"class>` qui peuvent être utilisées pour vérifier si une classe fournit une "
|
||||
|
@ -105,7 +106,7 @@ msgid ""
|
|||
"class>`:"
|
||||
msgstr ""
|
||||
"Le module collections apporte les :term:`ABC <abstract base class>` "
|
||||
"suivantes :"
|
||||
"suivantes :"
|
||||
|
||||
#: library/collections.abc.rst:121
|
||||
msgid "ABC"
|
||||
|
@ -690,7 +691,7 @@ msgstr ""
|
|||
msgid "Notes on using :class:`Set` and :class:`MutableSet` as a mixin:"
|
||||
msgstr ""
|
||||
"Notes à propos de l'utilisation de :class:`Set` et :class:`MutableSet` comme "
|
||||
"*mixin* :"
|
||||
"*mixin* :"
|
||||
|
||||
#: library/collections.abc.rst:391
|
||||
msgid ""
|
||||
|
@ -726,12 +727,13 @@ msgstr ""
|
|||
"puis les autres opérations seront automatiquement adaptées."
|
||||
|
||||
#: library/collections.abc.rst:407
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"The :class:`Set` mixin provides a :meth:`_hash` method to compute a hash "
|
||||
"value for the set; however, :meth:`__hash__` is not defined because not all "
|
||||
"sets are hashable or immutable. To add set hashability using mixins, "
|
||||
"inherit from both :meth:`Set` and :meth:`Hashable`, then define ``__hash__ = "
|
||||
"Set._hash``."
|
||||
"sets are :term:`hashable` or immutable. To add set hashability using "
|
||||
"mixins, inherit from both :meth:`Set` and :meth:`Hashable`, then define "
|
||||
"``__hash__ = Set._hash``."
|
||||
msgstr ""
|
||||
"La classe *mixin* :class:`Set` apporte une méthode :meth:`_hash` pour "
|
||||
"calculer une valeur de hachage pour l'ensemble ; cependant :meth:`__hash__` "
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-03-23 18:39+0100\n"
|
||||
"POT-Creation-Date: 2023-04-14 13:19+0200\n"
|
||||
"PO-Revision-Date: 2021-11-06 20:46+0100\n"
|
||||
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -69,7 +69,8 @@ msgid ":class:`Counter`"
|
|||
msgstr ":class:`Counter`"
|
||||
|
||||
#: library/collections.rst:28
|
||||
msgid "dict subclass for counting hashable objects"
|
||||
#, fuzzy
|
||||
msgid "dict subclass for counting :term:`hashable` objects"
|
||||
msgstr "sous-classe de ``dict`` pour compter des objets hachables"
|
||||
|
||||
#: library/collections.rst:29
|
||||
|
@ -378,8 +379,9 @@ msgstr ""
|
|||
"dénombrements. Par exemple ::"
|
||||
|
||||
#: library/collections.rst:244
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"A :class:`Counter` is a :class:`dict` subclass for counting hashable "
|
||||
"A :class:`Counter` is a :class:`dict` subclass for counting :term:`hashable` "
|
||||
"objects. It is a collection where elements are stored as dictionary keys and "
|
||||
"their counts are stored as dictionary values. Counts are allowed to be any "
|
||||
"integer value including zero or negative counts. The :class:`Counter` class "
|
||||
|
@ -1591,7 +1593,7 @@ msgstr ""
|
|||
"Déplace une clé *key* existante à l'une des deux extrémités du "
|
||||
"dictionnaire : à droite si *last* vaut ``True`` (comportement par défaut) ou "
|
||||
"à gauche sinon. Lève une exception :exc:`KeyError` si la clé *key* n'est pas "
|
||||
"trouvée ::"
|
||||
"trouvée :"
|
||||
|
||||
#: library/collections.rst:1161
|
||||
msgid ""
|
||||
|
|
|
@ -37,4 +37,4 @@ msgstr ""
|
|||
msgid "The following are support modules for some of the above services:"
|
||||
msgstr ""
|
||||
"Les modules suivants servent de fondation pour certains services cités ci-"
|
||||
"dessus."
|
||||
"dessus :"
|
||||
|
|
|
@ -502,7 +502,7 @@ msgid ""
|
|||
"the following constants:"
|
||||
msgstr ""
|
||||
"*return_when* indique quand la fonction doit se terminer. Il peut prendre "
|
||||
"les valeurs suivantes :"
|
||||
"les valeurs suivantes :"
|
||||
|
||||
#: library/concurrent.futures.rst:475
|
||||
msgid "Constant"
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
|
||||
"POT-Creation-Date: 2023-04-14 13:19+0200\n"
|
||||
"PO-Revision-Date: 2022-10-18 12:35+0200\n"
|
||||
"Last-Translator: Dimitri Merejkowsky <dimitri@dmerej.info>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -216,11 +216,12 @@ msgstr ""
|
|||
"d'une section en spécifiant une valeur de substitution :"
|
||||
|
||||
#: library/configparser.rst:224
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Please note that default values have precedence over fallback values. For "
|
||||
"instance, in our example the ``'CompressionLevel'`` key was specified only "
|
||||
"in the ``'DEFAULT'`` section. If we try to get it from the section "
|
||||
"``'topsecret.server.com'``, we will always get the default, even if we "
|
||||
"``'topsecret.server.example'``, we will always get the default, even if we "
|
||||
"specify a fallback:"
|
||||
msgstr ""
|
||||
"Notez que les valeurs par défaut sont prioritaires par rapport aux valeurs "
|
||||
|
@ -464,7 +465,7 @@ msgstr ""
|
|||
|
||||
#: library/configparser.rst:450
|
||||
msgid "``DEFAULTSECT`` cannot be removed from the parser:"
|
||||
msgstr "La section ``DEFAULTSECT`` ne peut pas être supprimée ::"
|
||||
msgstr "La section ``DEFAULTSECT`` ne peut pas être supprimée :"
|
||||
|
||||
# fausse alerte dans poedit - garder le point-virgule
|
||||
#: library/configparser.rst:452
|
||||
|
|
|
@ -23,7 +23,7 @@ msgstr "Constantes natives"
|
|||
msgid "A small number of constants live in the built-in namespace. They are:"
|
||||
msgstr ""
|
||||
"Un petit nombre de constantes existent dans le *namespace* natif. Elles "
|
||||
"sont :"
|
||||
"sont :"
|
||||
|
||||
#: library/constants.rst:10
|
||||
msgid ""
|
||||
|
|
|
@ -205,7 +205,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Les gestionnaires de contexte définis avec :func:`asynccontextmanager` "
|
||||
"peuvent s'utiliser comme décorateurs ou dans les instructions :keyword:"
|
||||
"`async with` :"
|
||||
"`async with` ::"
|
||||
|
||||
#: library/contextlib.rst:149
|
||||
msgid ""
|
||||
|
@ -289,7 +289,7 @@ msgid ""
|
|||
"<async-context-managers>`::"
|
||||
msgstr ""
|
||||
"Similaire à :func:`~contextlib.contextmanager`, mais crée un :ref:"
|
||||
"`gestionnaire de contexte asynchrone <async-context-managers>`."
|
||||
"`gestionnaire de contexte asynchrone <async-context-managers>` ::"
|
||||
|
||||
#: library/contextlib.rst:266
|
||||
msgid ":term:`asynchronous context manager` support was added."
|
||||
|
|
|
@ -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: 2021-05-26 21:26-0400\n"
|
||||
"PO-Revision-Date: 2023-04-08 19:57+0200\n"
|
||||
"Last-Translator: Martin Chlumsky <martin.chlumsky@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.4.3\n"
|
||||
"X-Generator: Poedit 3.2.1\n"
|
||||
|
||||
#: library/contextvars.rst:2
|
||||
msgid ":mod:`contextvars` --- Context Variables"
|
||||
|
@ -57,7 +57,7 @@ msgstr "Variables de contexte"
|
|||
msgid "This class is used to declare a new Context Variable, e.g.::"
|
||||
msgstr ""
|
||||
"Cette classe est utilisée pour déclarer une nouvelle variable de contexte, "
|
||||
"p. ex. ::"
|
||||
"p. ex ::"
|
||||
|
||||
#: library/contextvars.rst:35
|
||||
msgid ""
|
||||
|
@ -208,7 +208,7 @@ msgid ""
|
|||
"variables and their values that are set in it::"
|
||||
msgstr ""
|
||||
"Le fragment de code qui suit obtient une copie du contexte actuel et affiche "
|
||||
"toutes les variables avec leurs valeurs définies dans ce contexte."
|
||||
"toutes les variables avec leurs valeurs définies dans ce contexte ::"
|
||||
|
||||
#: library/contextvars.rst:134
|
||||
msgid ""
|
||||
|
@ -284,7 +284,7 @@ msgstr ""
|
|||
|
||||
#: library/contextvars.rst:195
|
||||
msgid "Return a shallow copy of the context object."
|
||||
msgstr "Renvoie une copie de surface de l'objet de contexte."
|
||||
msgstr "Renvoie une copie superficielle de l'objet de contexte."
|
||||
|
||||
#: library/contextvars.rst:199
|
||||
msgid ""
|
||||
|
|
|
@ -28,4 +28,4 @@ msgstr ""
|
|||
"Les modules décrits dans ce chapitre mettent en œuvre divers algorithmes "
|
||||
"cryptographiques. Ils peuvent, ou pas, être disponibles, en fonction de "
|
||||
"l'installation Sur les systèmes Unix, le module :mod:`crypt` peut aussi être "
|
||||
"disponible. Voici une vue d'ensemble:"
|
||||
"disponible. Voici une vue d'ensemble :"
|
||||
|
|
|
@ -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: 2022-05-20 10:21+0200\n"
|
||||
"Last-Translator: Mathieu Dupuy <deronnax@gmail.com>\n"
|
||||
"PO-Revision-Date: 2023-03-27 00:24+0200\n"
|
||||
"Last-Translator: Mathieu Dupuy\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.1\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
|
||||
#: library/csv.rst:2
|
||||
msgid ":mod:`csv` --- CSV File Reading and Writing"
|
||||
|
@ -340,7 +340,7 @@ msgstr ""
|
|||
"Tous les noms disponibles de :class:`Dialect` sont renvoyés par :func:"
|
||||
"`list_dialects`, et ils peuvent être enregistrés avec des classes :class:"
|
||||
"`reader` et :class:`writer` spécifiques en passant par leur fonction "
|
||||
"d’initialisation (``__init__``) comme ici :"
|
||||
"d’initialisation (``__init__``) comme ici ::"
|
||||
|
||||
#: library/csv.rst:247
|
||||
msgid ""
|
||||
|
@ -572,7 +572,7 @@ msgstr ""
|
|||
|
||||
#: library/csv.rst:386
|
||||
msgid "An empty *escapechar* is not allowed."
|
||||
msgstr ""
|
||||
msgstr "Un ``escapechar`` vide n'est pas autorisé."
|
||||
|
||||
#: library/csv.rst:391
|
||||
msgid ""
|
||||
|
@ -604,7 +604,7 @@ msgstr ""
|
|||
|
||||
#: library/csv.rst:407
|
||||
msgid "An empty *quotechar* is not allowed."
|
||||
msgstr ""
|
||||
msgstr "Un ``quotechar`` vide n'est pas autorisé."
|
||||
|
||||
#: library/csv.rst:412
|
||||
msgid ""
|
||||
|
@ -618,7 +618,6 @@ msgstr ""
|
|||
"const:`QUOTE_MINIMAL`."
|
||||
|
||||
#: library/csv.rst:419
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"When :const:`True`, spaces immediately following the *delimiter* are "
|
||||
"ignored. The default is :const:`False`."
|
||||
|
@ -787,7 +786,6 @@ msgid "The corresponding simplest possible writing example is::"
|
|||
msgstr "Le plus simple exemple d'écriture correspondant est ::"
|
||||
|
||||
#: library/csv.rst:543
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Since :func:`open` is used to open a CSV file for reading, the file will by "
|
||||
"default be decoded into unicode using the system default encoding (see :func:"
|
||||
|
@ -796,9 +794,8 @@ msgid ""
|
|||
msgstr ""
|
||||
"Puisque :func:`open` est utilisée pour ouvrir un fichier CSV en lecture, le "
|
||||
"fichier sera par défaut décodé vers Unicode en utilisant l'encodage par "
|
||||
"défaut (voir :func:`locale.getpreferredencoding`). Pour décoder un fichier "
|
||||
"utilisant un encodage différent, utilisez l'argument ``encoding`` de "
|
||||
"*open* ::"
|
||||
"défaut (voir :func:`locale.getencoding`). Pour décoder un fichier utilisant "
|
||||
"un encodage différent, utilisez l'argument ``encoding`` de *open* ::"
|
||||
|
||||
#: library/csv.rst:554
|
||||
msgid ""
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue