faq - design, partie 2 (#437)

This commit is contained in:
Mathieu Dupuy 2018-11-23 15:17:29 +01:00 committed by Julien Palard
parent 12012db976
commit 9f70c6bd52

View File

@ -1,6 +1,6 @@
# Copyright (C) 2001-2018, Python Software Foundation # Copyright (C) 2001-2018, Python Software Foundation
# For licence information, see README file. # For licence information, see README file.
# #
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3.6\n" "Project-Id-Version: Python 3.6\n"
@ -436,14 +436,15 @@ msgid ""
"mapping has a get() or keys() method, or something that isn't a file has a " "mapping has a get() or keys() method, or something that isn't a file has a "
"write() method." "write() method."
msgstr "" msgstr ""
"(b) Quand je lis du code qui dit ``len(x)`` *je sais* qu'il demande la longueur " "(b) Quand je lis du code qui dit ``len(x)`` *je sais* qu'il demande la "
"de quelque chose. Cela me dit deux choses : le résultat est un entier, et " "longueur de quelque chose. Cela me dit deux choses : le résultat est un "
"l'argument est une sorte de conteneur. Au contraire, quand je lis ``x.len()``, " "entier, et l'argument est une sorte de conteneur. Au contraire, quand je lis "
"je dois déjà savoir que x est une sorte de conteneur implémentant une " "``x.len()``, je dois déjà savoir que x est une sorte de conteneur "
"interface ou héritant d'une classe qui a un ``len()`` standard. Voyez la " "implémentant une interface ou héritant d'une classe qui a un ``len()`` "
"confusion qui arrive parfois quand une classe qui n'implémente pas une " "standard. Voyez la confusion qui arrive parfois quand une classe qui "
"interface de dictionnaire a une méthode ``get()`` ou ``key()``, ou quand un objet " "n'implémente pas une interface de dictionnaire a une méthode ``get()`` ou "
"qui n'est pas un fichier implémente une méthode ``write()``." "``key()``, ou quand un objet qui n'est pas un fichier implémente une méthode "
"``write()``."
#: ../Doc/faq/design.rst:254 #: ../Doc/faq/design.rst:254
msgid "https://mail.python.org/pipermail/python-3000/2006-November/004643.html" msgid "https://mail.python.org/pipermail/python-3000/2006-November/004643.html"
@ -1140,9 +1141,9 @@ msgid ""
"dictionary in sorted order::" "dictionary in sorted order::"
msgstr "" msgstr ""
"Si vous souhaitez retourner une nouvelle liste, utilisez plutôt la fonction " "Si vous souhaitez retourner une nouvelle liste, utilisez plutôt la fonction "
"native :func:`sorted`. Cette fonction crée une nouvelle liste à partir " "native :func:`sorted`. Cette fonction crée une nouvelle liste à partir dun "
"dun itérable fourni, la trie et la retourne. Par exemple, voici comment " "itérable fourni, la trie et la retourne. Par exemple, voici comment itérer "
"itérer sur les clefs dun dictionnaire dans lordre trié ::" "sur les clefs dun dictionnaire dans lordre trié ::"
#: ../Doc/faq/design.rst:608 #: ../Doc/faq/design.rst:608
msgid "How do you specify and enforce an interface spec in Python?" msgid "How do you specify and enforce an interface spec in Python?"
@ -1236,6 +1237,8 @@ msgstr ""
#: ../Doc/faq/design.rst:672 #: ../Doc/faq/design.rst:672
msgid "Why can't raw strings (r-strings) end with a backslash?" msgid "Why can't raw strings (r-strings) end with a backslash?"
msgstr "" msgstr ""
"Pourquoi les chaînes de caractères brutes (r-strings) ne peuvent-elles pas "
"se terminer par un *backslash* ?"
#: ../Doc/faq/design.rst:674 #: ../Doc/faq/design.rst:674
msgid "" msgid ""
@ -1243,6 +1246,9 @@ msgid ""
"unpaired backslash at the end escapes the closing quote character, leaving " "unpaired backslash at the end escapes the closing quote character, leaving "
"an unterminated string." "an unterminated string."
msgstr "" msgstr ""
"Plus précisément, elles ne peuvent pas se terminer par un nombre impair de "
"*backslashes* : le *backslash* non appairé à la fin échappe le caractère de "
"guillemet final, laissant une chaîne non terminée."
#: ../Doc/faq/design.rst:678 #: ../Doc/faq/design.rst:678
msgid "" msgid ""
@ -1253,17 +1259,29 @@ msgid ""
"pass on the string quote character by escaping it with a backslash. These " "pass on the string quote character by escaping it with a backslash. These "
"rules work well when r-strings are used for their intended purpose." "rules work well when r-strings are used for their intended purpose."
msgstr "" msgstr ""
"Les chaînes brutes ont été conçues pour faciliter la création de données pour "
"les processeurs de texte (principalement les moteurs d'expressions "
"régulières) qui veulent faire leur propre traitement d'échappement "
"d'*antislashes*. Ces processeurs considèrent un *antislash* de fin non-appairé "
"comme une erreur, alors les chaînes brutes ne le permettent pas. En retour, "
"elles vous permettent de transmettre le caractère de citation de la chaîne "
"en l'échappant avec un *antislash*. Ces règles fonctionnent bien lorsque les "
"chaînes brutes sont utilisées pour leur but premier."
#: ../Doc/faq/design.rst:685 #: ../Doc/faq/design.rst:685
msgid "" msgid ""
"If you're trying to build Windows pathnames, note that all Windows system " "If you're trying to build Windows pathnames, note that all Windows system "
"calls accept forward slashes too::" "calls accept forward slashes too::"
msgstr "" msgstr ""
"Si vous essayez de construire des chemins d'accès Windows, notez que tous "
"les appels système Windows acceptent également les *slashes* \"classiques\" ::"
#: ../Doc/faq/design.rst:690 #: ../Doc/faq/design.rst:690
msgid "" msgid ""
"If you're trying to build a pathname for a DOS command, try e.g. one of ::" "If you're trying to build a pathname for a DOS command, try e.g. one of ::"
msgstr "" msgstr ""
"Si vous essayez de construire un chemin d'accès pour une commande DOS, "
"essayez par exemple l'un de ceux-là ::"
#: ../Doc/faq/design.rst:698 #: ../Doc/faq/design.rst:698
msgid "Why doesn't Python have a \"with\" statement for attribute assignments?" msgid "Why doesn't Python have a \"with\" statement for attribute assignments?"
@ -1314,7 +1332,7 @@ msgstr ""
#: ../Doc/faq/design.rst:721 #: ../Doc/faq/design.rst:721
msgid "For instance, take the following incomplete snippet::" msgid "For instance, take the following incomplete snippet::"
msgstr "" msgstr "Prenons par exemple l'extrait incomplet suivant ::"
#: ../Doc/faq/design.rst:727 #: ../Doc/faq/design.rst:727
msgid "" msgid ""
@ -1324,6 +1342,11 @@ msgid ""
"variable named \"x\", will it be used inside the with block? As you see, " "variable named \"x\", will it be used inside the with block? As you see, "
"the dynamic nature of Python makes such choices much harder." "the dynamic nature of Python makes such choices much harder."
msgstr "" msgstr ""
"L'extrait suppose que \"a\" doit avoir un attribut membre appelé \"x\". "
"Néanmoins, il n'y a rien en Python qui en informe l'interpréteur. Que se "
"passe-t-il si \"a\" est, disons, un entier ? Si une variable globale nommée "
"\"x\" existe, sera-t-elle utilisée dans le bloc ``with`` ? Comme vous "
"voyez, la nature dynamique du Python rend ces choix beaucoup plus difficiles."
#: ../Doc/faq/design.rst:733 #: ../Doc/faq/design.rst:733
msgid "" msgid ""
@ -1331,10 +1354,13 @@ msgid ""
"code volume) can, however, easily be achieved in Python by assignment. " "code volume) can, however, easily be achieved in Python by assignment. "
"Instead of::" "Instead of::"
msgstr "" msgstr ""
"L'avantage principal de ``with`` et des fonctionnalités de langage "
"similaires (réduction du volume de code) peut, cependant, être facilement "
"réalisé en Python par assignation. Au lieu de ::"
#: ../Doc/faq/design.rst:740 #: ../Doc/faq/design.rst:740
msgid "write this::" msgid "write this::"
msgstr "" msgstr "écrivez ceci ::"
#: ../Doc/faq/design.rst:747 #: ../Doc/faq/design.rst:747
msgid "" msgid ""
@ -1342,20 +1368,27 @@ msgid ""
"bindings are resolved at run-time in Python, and the second version only " "bindings are resolved at run-time in Python, and the second version only "
"needs to perform the resolution once." "needs to perform the resolution once."
msgstr "" msgstr ""
"Cela a également pour effet secondaire d'augmenter la vitesse d'exécution "
"car les liaisons de noms sont résolues au moment de l'exécution en Python, "
"et la deuxième version n'a besoin d'exécuter la résolution qu'une seule fois."
#: ../Doc/faq/design.rst:753 #: ../Doc/faq/design.rst:753
msgid "Why are colons required for the if/while/def/class statements?" msgid "Why are colons required for the if/while/def/class statements?"
msgstr "" msgstr ""
"Pourquoi les deux-points sont-ils nécessaires pour les déclarations ``if/while/"
"def/class`` ?"
#: ../Doc/faq/design.rst:755 #: ../Doc/faq/design.rst:755
msgid "" msgid ""
"The colon is required primarily to enhance readability (one of the results " "The colon is required primarily to enhance readability (one of the results "
"of the experimental ABC language). Consider this::" "of the experimental ABC language). Consider this::"
msgstr "" msgstr ""
"Le deux-points est principalement nécessaires pour améliorer la lisibilité "
"(l'un des résultats du langage expérimental ABC). Considérez ceci ::"
#: ../Doc/faq/design.rst:761 #: ../Doc/faq/design.rst:761
msgid "versus ::" msgid "versus ::"
msgstr "" msgstr "versus ::"
#: ../Doc/faq/design.rst:766 #: ../Doc/faq/design.rst:766
msgid "" msgid ""
@ -1363,6 +1396,9 @@ msgid ""
"colon sets off the example in this FAQ answer; it's a standard usage in " "colon sets off the example in this FAQ answer; it's a standard usage in "
"English." "English."
msgstr "" msgstr ""
"Remarquez comment le deuxième est un peu plus facile à lire. Remarquez "
"aussi comment un deux-points introduit l'exemple dans cette réponse à la FAQ ; "
"c'est un usage standard en anglais."
#: ../Doc/faq/design.rst:769 #: ../Doc/faq/design.rst:769
msgid "" msgid ""
@ -1371,16 +1407,23 @@ msgid ""
"needs to be increased instead of having to do a more elaborate parsing of " "needs to be increased instead of having to do a more elaborate parsing of "
"the program text." "the program text."
msgstr "" msgstr ""
"Une autre raison mineure est que les deux-points facilitent la tâche des "
"éditeurs avec coloration syntaxique ; ils peuvent rechercher les deux-points "
"pour décider quand l'indentation doit être augmentée au lieu d'avoir à faire "
"une analyse plus élaborée du texte du programme."
#: ../Doc/faq/design.rst:775 #: ../Doc/faq/design.rst:775
msgid "Why does Python allow commas at the end of lists and tuples?" msgid "Why does Python allow commas at the end of lists and tuples?"
msgstr "" msgstr ""
"Pourquoi Python permet-il les virgules à la fin des listes et des tuples ?"
#: ../Doc/faq/design.rst:777 #: ../Doc/faq/design.rst:777
msgid "" msgid ""
"Python lets you add a trailing comma at the end of lists, tuples, and " "Python lets you add a trailing comma at the end of lists, tuples, and "
"dictionaries::" "dictionaries::"
msgstr "" msgstr ""
"Python vous permet d'ajouter une virgule à la fin des listes, des tuples et "
"des dictionnaires ::"
#: ../Doc/faq/design.rst:788 #: ../Doc/faq/design.rst:788
msgid "There are several reasons to allow this." msgid "There are several reasons to allow this."
@ -1393,12 +1436,19 @@ msgid ""
"remember to add a comma to the previous line. The lines can also be " "remember to add a comma to the previous line. The lines can also be "
"reordered without creating a syntax error." "reordered without creating a syntax error."
msgstr "" msgstr ""
"Lorsque vous avez une valeur littérale pour une liste, un tuple ou un "
"dictionnaire réparti sur plusieurs lignes, il est plus facile d'ajouter plus "
"d'éléments parce que vous n'avez pas besoin de vous rappeler d'ajouter une "
"virgule à la ligne précédente. Les lignes peuvent aussi être réorganisées "
"sans créer une erreur de syntaxe."
#: ../Doc/faq/design.rst:795 #: ../Doc/faq/design.rst:795
msgid "" msgid ""
"Accidentally omitting the comma can lead to errors that are hard to " "Accidentally omitting the comma can lead to errors that are hard to "
"diagnose. For example::" "diagnose. For example::"
msgstr "" msgstr ""
"L'omission accidentelle de la virgule peut entraîner des erreurs difficiles "
"à diagnostiquer, par exemple ::"
#: ../Doc/faq/design.rst:805 #: ../Doc/faq/design.rst:805
msgid "" msgid ""
@ -1406,9 +1456,14 @@ msgid ""
"\"fee\", \"fiefoo\" and \"fum\". Always adding the comma avoids this source " "\"fee\", \"fiefoo\" and \"fum\". Always adding the comma avoids this source "
"of error." "of error."
msgstr "" msgstr ""
"Cette liste a l'air d'avoir quatre éléments, mais elle en contient en fait "
"trois : \"*fee*\", \"*fiefoo*\" et \"*fum*\". Toujours ajouter la virgule permet "
"d'éviter cette source d'erreur."
#: ../Doc/faq/design.rst:808 #: ../Doc/faq/design.rst:808
msgid "" msgid ""
"Allowing the trailing comma may also make programmatic code generation " "Allowing the trailing comma may also make programmatic code generation "
"easier." "easier."
msgstr "" msgstr ""
"Permettre la virgule de fin peut également faciliter la génération de code "
"programmatiquement."