rewrap pyporting.rst
This commit is contained in:
parent d1b85cb97b
commit 1a8f4ce0f3
1 changed files with 199 additions and 201 deletions
| | @ -39,8 +39,8 @@ msgid "" | |||
msgstr "" | ||||
"Python 3 étant le futur de Python tandis que Python 2 est encore activement " | ||||
"utilisé, il est préférable de faire en sorte que votre projet soit " | ||||
"disponible pour les deux versions majeures de Python. Ce guide est destiné à" | ||||
" vous aider à comprendre comment gérer simultanément Python 2 & 3." | ||||
"disponible pour les deux versions majeures de Python. Ce guide est destiné à " | ||||
"vous aider à comprendre comment gérer simultanément Python 2 & 3." | ||||
| ||||
#: ../Doc/howto/pyporting.rst:16 | ||||
msgid "" | ||||
| | @ -74,8 +74,8 @@ msgstr "La version courte" | |||
| ||||
#: ../Doc/howto/pyporting.rst:29 | ||||
msgid "" | ||||
"To make your project be single-source Python 2/3 compatible, the basic steps" | ||||
" are:" | ||||
"To make your project be single-source Python 2/3 compatible, the basic steps " | ||||
"are:" | ||||
msgstr "" | ||||
"Afin de rendre votre projet compatible Python 2/3 avec le même code source, " | ||||
"les étapes de base sont :" | ||||
| | @ -112,12 +112,12 @@ msgstr "" | |||
| ||||
#: ../Doc/howto/pyporting.rst:39 | ||||
msgid "" | ||||
"Use caniusepython3_ to find out which of your dependencies are blocking your" | ||||
" use of Python 3 (``pip install caniusepython3``)" | ||||
"Use caniusepython3_ to find out which of your dependencies are blocking your " | ||||
"use of Python 3 (``pip install caniusepython3``)" | ||||
msgstr "" | ||||
"Utiliser caniusepython3_ pour déterminer quelles sont, parmi les dépendances" | ||||
" que vous utilisez, celles qui bloquent votre utilisation de Python 3 (``pip" | ||||
" install caniusepython3``)" | ||||
"Utiliser caniusepython3_ pour déterminer quelles sont, parmi les dépendances " | ||||
"que vous utilisez, celles qui bloquent votre utilisation de Python 3 (``pip " | ||||
"install caniusepython3``)" | ||||
| ||||
#: ../Doc/howto/pyporting.rst:41 | ||||
msgid "" | ||||
| | @ -136,9 +136,9 @@ msgid "" | |||
"works in both Python 2 & 3 (e.g. use mypy_ to check your typing under both " | ||||
"Python 2 & Python 3)." | ||||
msgstr "" | ||||
"Envisager l'utilisation d'un vérifieur de type statique afin de vous assurer" | ||||
" que votre façon d'utiliser les types est compatible avec Python 2 et 3 (par" | ||||
" exemple en utilisant mypy_ pour vérifier votre typage sous Python 2 et 3)." | ||||
"Envisager l'utilisation d'un vérifieur de type statique afin de vous assurer " | ||||
"que votre façon d'utiliser les types est compatible avec Python 2 et 3 (par " | ||||
"exemple en utilisant mypy_ pour vérifier votre typage sous Python 2 et 3)." | ||||
| ||||
#: ../Doc/howto/pyporting.rst:50 | ||||
msgid "Details" | ||||
| | @ -155,15 +155,15 @@ msgstr "" | |||
"Un point clé du support simultané de Python 2 et 3 est qu'il vous est " | ||||
"possible de commencer **dès aujourd'hui** ! Même si vos dépendances ne sont " | ||||
"pas encore compatibles Python 3, vous pouvez moderniser votre code **dès " | ||||
"maintenant** pour gérer Python 3. La plupart des modifications nécessaires à" | ||||
" la compatibilité Python 3 donnent un code plus propre utilisant une syntaxe" | ||||
" plus récente, même dans du code Python 2." | ||||
"maintenant** pour gérer Python 3. La plupart des modifications nécessaires à " | ||||
"la compatibilité Python 3 donnent un code plus propre utilisant une syntaxe " | ||||
"plus récente, même dans du code Python 2." | ||||
| ||||
#: ../Doc/howto/pyporting.rst:58 | ||||
msgid "" | ||||
"Another key point is that modernizing your Python 2 code to also support " | ||||
"Python 3 is largely automated for you. While you might have to make some API" | ||||
" decisions thanks to Python 3 clarifying text data versus binary data, the " | ||||
"Python 3 is largely automated for you. While you might have to make some API " | ||||
"decisions thanks to Python 3 clarifying text data versus binary data, the " | ||||
"lower-level work is now mostly done for you and thus can at least benefit " | ||||
"from the automated changes immediately." | ||||
msgstr "" | ||||
| | @ -176,12 +176,12 @@ msgstr "" | |||
| ||||
#: ../Doc/howto/pyporting.rst:64 | ||||
msgid "" | ||||
"Keep those key points in mind while you read on about the details of porting" | ||||
" your code to support Python 2 & 3 simultaneously." | ||||
"Keep those key points in mind while you read on about the details of porting " | ||||
"your code to support Python 2 & 3 simultaneously." | ||||
msgstr "" | ||||
"Gardez ces points-clés en tête pendant que vous lisez les détails ci-dessous" | ||||
" concernant le portage de votre code vers une compatibilité simultanée " | ||||
"Python 2 et 3." | ||||
"Gardez ces points-clés en tête pendant que vous lisez les détails ci-dessous " | ||||
"concernant le portage de votre code vers une compatibilité simultanée Python " | ||||
"2 et 3." | ||||
| ||||
#: ../Doc/howto/pyporting.rst:69 | ||||
msgid "Drop support for Python 2.6 and older" | ||||
| | @ -220,20 +220,20 @@ msgstr "" | |||
#: ../Doc/howto/pyporting.rst:83 | ||||
msgid "" | ||||
"But you should aim for only supporting Python 2.7. Python 2.6 is no longer " | ||||
"freely supported and thus is not receiving bugfixes. This means **you** will" | ||||
" have to work around any issues you come across with Python 2.6. There are " | ||||
"also some tools mentioned in this HOWTO which do not support Python 2.6 " | ||||
"(e.g., Pylint_), and this will become more commonplace as time goes on. It " | ||||
"will simply be easier for you if you only support the versions of Python " | ||||
"that you have to support." | ||||
"freely supported and thus is not receiving bugfixes. This means **you** will " | ||||
"have to work around any issues you come across with Python 2.6. There are " | ||||
"also some tools mentioned in this HOWTO which do not support Python 2.6 (e." | ||||
"g., Pylint_), and this will become more commonplace as time goes on. It will " | ||||
"simply be easier for you if you only support the versions of Python that you " | ||||
"have to support." | ||||
msgstr "" | ||||
"Mais nous vous conseillons de viser seulement un support de Python 2.7. " | ||||
"Python 2.6 n'est plus supporté gratuitement et par conséquent ne reçoit plus" | ||||
" aucun correctif. Cela signifie que **vous** devrez trouver des solutions de" | ||||
" contournement aux problèmes que vous rencontrez avec Python 2.6. Il existe " | ||||
"Python 2.6 n'est plus supporté gratuitement et par conséquent ne reçoit plus " | ||||
"aucun correctif. Cela signifie que **vous** devrez trouver des solutions de " | ||||
"contournement aux problèmes que vous rencontrez avec Python 2.6. Il existe " | ||||
"en outre des outils mentionnés dans ce guide pratique qui ne supportent pas " | ||||
"Python 2.6 (par exemple Pylint_), ce qui sera de plus en plus courant au fil" | ||||
" du temps. Il est simplement plus facile pour vous de n'assurer une " | ||||
"Python 2.6 (par exemple Pylint_), ce qui sera de plus en plus courant au fil " | ||||
"du temps. Il est simplement plus facile pour vous de n'assurer une " | ||||
"compatibilité qu'avec les versions de Python que vous avez l'obligation de " | ||||
"gérer." | ||||
| ||||
| | @ -241,23 +241,23 @@ msgstr "" | |||
msgid "" | ||||
"Make sure you specify the proper version support in your ``setup.py`` file" | ||||
msgstr "" | ||||
"Assurez vous de spécifier la bonne version supportée dans le fichier " | ||||
"``setup.py``" | ||||
"Assurez vous de spécifier la bonne version supportée dans le fichier ``setup." | ||||
"py``" | ||||
| ||||
#: ../Doc/howto/pyporting.rst:94 | ||||
msgid "" | ||||
"In your ``setup.py`` file you should have the proper `trove classifier`_ " | ||||
"specifying what versions of Python you support. As your project does not " | ||||
"support Python 3 yet you should at least have ``Programming Language :: " | ||||
"Python :: 2 :: Only`` specified. Ideally you should also specify each " | ||||
"major/minor version of Python that you do support, e.g. ``Programming " | ||||
"Language :: Python :: 2.7``." | ||||
"Python :: 2 :: Only`` specified. Ideally you should also specify each major/" | ||||
"minor version of Python that you do support, e.g. ``Programming Language :: " | ||||
"Python :: 2.7``." | ||||
msgstr "" | ||||
"Votre fichier ``setup.py`` devrait contenir le bon `trove classifier`_ " | ||||
"spécifiant les versions de Python avec lesquelles vous êtes compatible. " | ||||
"Comme votre projet ne supporte pas encore Python 3, vous devriez au moins " | ||||
"spécifier ``Programming Language :: Python :: 2 :: Only``. Dans l'idéal vous" | ||||
" devriez indiquer chaque version majeure/mineure de Python que vous gérez, " | ||||
"spécifier ``Programming Language :: Python :: 2 :: Only``. Dans l'idéal vous " | ||||
"devriez indiquer chaque version majeure/mineure de Python que vous gérez, " | ||||
"par exemple ``Programming Language :: Python :: 2.7``." | ||||
| ||||
#: ../Doc/howto/pyporting.rst:103 | ||||
| | @ -271,30 +271,30 @@ msgid "" | |||
"rule of thumb is that if you want to be confident enough in your test suite " | ||||
"that any failures that appear after having tools rewrite your code are " | ||||
"actual bugs in the tools and not in your code. If you want a number to aim " | ||||
"for, try to get over 80% coverage (and don't feel bad if you find it hard to" | ||||
" get better than 90% coverage). If you don't already have a tool to measure " | ||||
"for, try to get over 80% coverage (and don't feel bad if you find it hard to " | ||||
"get better than 90% coverage). If you don't already have a tool to measure " | ||||
"test coverage then coverage.py_ is recommended." | ||||
msgstr "" | ||||
"Une fois que votre code est compatible avec la plus ancienne version de " | ||||
"Python 2 que vous souhaitez, vous devez vous assurer que votre suite de test" | ||||
" a une couverture suffisante. Une bonne règle empirique consiste à avoir " | ||||
"Python 2 que vous souhaitez, vous devez vous assurer que votre suite de test " | ||||
"a une couverture suffisante. Une bonne règle empirique consiste à avoir " | ||||
"suffisamment confiance en la suite de test pour qu'une erreur apparaissant " | ||||
"après la réécriture du code par les outils automatiques résulte de bogues de" | ||||
" ces derniers et non de votre code. Si vous souhaitez une valeur cible, " | ||||
"après la réécriture du code par les outils automatiques résulte de bogues de " | ||||
"ces derniers et non de votre code. Si vous souhaitez une valeur cible, " | ||||
"essayez de dépasser les 80 % de couverture (et ne vous sentez pas coupable " | ||||
"si vous trouvez difficile de faire mieux que 90 % de couverture). Si vous ne" | ||||
" disposez pas encore d'un outil pour mesurer la couverture de code, " | ||||
"coverage.py_ est recommandé." | ||||
"si vous trouvez difficile de faire mieux que 90 % de couverture). Si vous ne " | ||||
"disposez pas encore d'un outil pour mesurer la couverture de code, coverage." | ||||
"py_ est recommandé." | ||||
| ||||
#: ../Doc/howto/pyporting.rst:118 | ||||
msgid "" | ||||
"Once you have your code well-tested you are ready to begin porting your code" | ||||
" to Python 3! But to fully understand how your code is going to change and " | ||||
"Once you have your code well-tested you are ready to begin porting your code " | ||||
"to Python 3! But to fully understand how your code is going to change and " | ||||
"what you want to look out for while you code, you will want to learn what " | ||||
"changes Python 3 makes in terms of Python 2. Typically the two best ways of " | ||||
"doing that is reading the `\"What's New\"`_ doc for each release of Python 3" | ||||
" and the `Porting to Python 3`_ book (which is free online). There is also a" | ||||
" handy `cheat sheet`_ from the Python-Future project." | ||||
"doing that is reading the `\"What's New\"`_ doc for each release of Python 3 " | ||||
"and the `Porting to Python 3`_ book (which is free online). There is also a " | ||||
"handy `cheat sheet`_ from the Python-Future project." | ||||
msgstr "" | ||||
"Une fois que votre code est bien testé, vous êtes prêt à démarrer votre " | ||||
"portage vers Python 3 ! Mais afin de comprendre comment votre code va " | ||||
| | @ -311,13 +311,13 @@ msgstr "Mettre à jour votre code" | |||
| ||||
#: ../Doc/howto/pyporting.rst:130 | ||||
msgid "" | ||||
"Once you feel like you know what is different in Python 3 compared to Python" | ||||
" 2, it's time to update your code! You have a choice between two tools in " | ||||
"Once you feel like you know what is different in Python 3 compared to Python " | ||||
"2, it's time to update your code! You have a choice between two tools in " | ||||
"porting your code automatically: Futurize_ and Modernize_. Which tool you " | ||||
"choose will depend on how much like Python 3 you want your code to be. " | ||||
"Futurize_ does its best to make Python 3 idioms and practices exist in " | ||||
"Python 2, e.g. backporting the ``bytes`` type from Python 3 so that you have" | ||||
" semantic parity between the major versions of Python. Modernize_, on the " | ||||
"Python 2, e.g. backporting the ``bytes`` type from Python 3 so that you have " | ||||
"semantic parity between the major versions of Python. Modernize_, on the " | ||||
"other hand, is more conservative and targets a Python 2/3 subset of Python, " | ||||
"directly relying on six_ to help provide compatibility. As Python 3 is the " | ||||
"future, it might be best to consider Futurize to begin adjusting to any new " | ||||
| | @ -328,20 +328,20 @@ msgstr "" | |||
"le choix entre deux outils pour porter votre code automatiquement : " | ||||
"Futurize_ et Modernize_. Le choix de l'outil dépend de la dose de Python 3 " | ||||
"que vous souhaitez introduire dans votre code. Futurize_ s'efforce " | ||||
"d'introduire les idiomes et pratiques de Python 3 dans Python 2, par exemple" | ||||
" en réintroduisant le type ``bytes`` de Python 3 de telle sorte que la " | ||||
"d'introduire les idiomes et pratiques de Python 3 dans Python 2, par exemple " | ||||
"en réintroduisant le type ``bytes`` de Python 3 de telle sorte que la " | ||||
"sémantique soit identique entre les deux versions majeures de Python. En " | ||||
"revanche, Modernize_ est plus conservateur et vise un sous-ensemble " | ||||
"d'instructions Python 2/3, en s'appuyant directement sur six_ pour la " | ||||
"compatibilité. Python 3 étant le futur de Python, il pourrait être " | ||||
"préférable d'utiliser *Futurize* afin de commencer à s'ajuster aux nouvelles" | ||||
" pratiques introduites par Python 3 avec lesquelles vous n'êtes pas encore " | ||||
"préférable d'utiliser *Futurize* afin de commencer à s'ajuster aux nouvelles " | ||||
"pratiques introduites par Python 3 avec lesquelles vous n'êtes pas encore " | ||||
"habitué." | ||||
| ||||
#: ../Doc/howto/pyporting.rst:142 | ||||
msgid "" | ||||
"Regardless of which tool you choose, they will update your code to run under" | ||||
" Python 3 while staying compatible with the version of Python 2 you started " | ||||
"Regardless of which tool you choose, they will update your code to run under " | ||||
"Python 3 while staying compatible with the version of Python 2 you started " | ||||
"with. Depending on how conservative you want to be, you may want to run the " | ||||
"tool over your test suite first and visually inspect the diff to make sure " | ||||
"the transformation is accurate. After you have transformed your test suite " | ||||
| | @ -349,12 +349,12 @@ msgid "" | |||
"transform your application code knowing that any tests which fail is a " | ||||
"translation failure." | ||||
msgstr "" | ||||
"Indépendamment de l'outil sur lequel se porte votre choix, celui-ci mettra à" | ||||
" jour votre code afin qu'il puisse être exécuté par Python 3 tout en " | ||||
"Indépendamment de l'outil sur lequel se porte votre choix, celui-ci mettra à " | ||||
"jour votre code afin qu'il puisse être exécuté par Python 3 tout en " | ||||
"maintenant sa compatibilité avec la version de Python 2 dont vous êtes " | ||||
"parti. En fonction du niveau de prudence que vous visez, vous pouvez " | ||||
"exécuter l'outil sur votre suite de test d'abord puis inspecter visuellement" | ||||
" la différence afin de vous assurer que la transformation est exacte. Après " | ||||
"exécuter l'outil sur votre suite de test d'abord puis inspecter visuellement " | ||||
"la différence afin de vous assurer que la transformation est exacte. Après " | ||||
"avoir transformé votre suite de test et vérifié que tous les tests " | ||||
"s'exécutent comme attendu, vous pouvez transformer le code de votre " | ||||
"application avec l'assurance que chaque test qui échoue correspond à un " | ||||
| | @ -367,21 +367,21 @@ msgid "" | |||
"manually to get full Python 3 support (which of these steps are necessary " | ||||
"vary between the tools). Read the documentation for the tool you choose to " | ||||
"use to see what it fixes by default and what it can do optionally to know " | ||||
"what will (not) be fixed for you and what you may have to fix on your own " | ||||
"(e.g. using ``io.open()`` over the built-in ``open()`` function is off by " | ||||
"default in Modernize). Luckily, though, there are only a couple of things to" | ||||
" watch out for which can be considered large issues that may be hard to " | ||||
"debug if not watched for." | ||||
"what will (not) be fixed for you and what you may have to fix on your own (e." | ||||
"g. using ``io.open()`` over the built-in ``open()`` function is off by " | ||||
"default in Modernize). Luckily, though, there are only a couple of things to " | ||||
"watch out for which can be considered large issues that may be hard to debug " | ||||
"if not watched for." | ||||
msgstr "" | ||||
"Malheureusement les outils ne peuvent pas automatiser tous les changements " | ||||
"requis pour permettre à votre code de s'exécuter sous Python 3 et il y a " | ||||
"donc quelques points sur lesquels vous devrez travailler manuellement afin " | ||||
"d'atteindre la compatibilité totale Python 3 (les étapes nécessaires peuvent" | ||||
" varier en fonction de l'outil utilisé). Lisez la documentation de l'outil " | ||||
"que vous avez choisi afin d'identifier ce qu'il corrige par défaut et ce qui" | ||||
" peut être appliqué de façon optionnelle afin de savoir ce qui sera (ou non)" | ||||
" corrigé pour vous ou ce que vous devrez modifier vous-même (par exemple, le" | ||||
" remplacement ``io.open()`` plutôt que la fonction native ``open()`` est " | ||||
"d'atteindre la compatibilité totale Python 3 (les étapes nécessaires peuvent " | ||||
"varier en fonction de l'outil utilisé). Lisez la documentation de l'outil " | ||||
"que vous avez choisi afin d'identifier ce qu'il corrige par défaut et ce qui " | ||||
"peut être appliqué de façon optionnelle afin de savoir ce qui sera (ou non) " | ||||
"corrigé pour vous ou ce que vous devrez modifier vous-même (par exemple, le " | ||||
"remplacement ``io.open()`` plutôt que la fonction native ``open()`` est " | ||||
"inactif par défaut dans *Modernize*). Heureusement, il n'y a que quelques " | ||||
"points à surveiller qui peuvent réellement être considérés comme des " | ||||
"problèmes difficiles à déboguer si vous n'y prêtez pas attention." | ||||
| | @ -394,20 +394,20 @@ msgstr "Division" | |||
msgid "" | ||||
"In Python 3, ``5 / 2 == 2.5`` and not ``2``; all division between ``int`` " | ||||
"values result in a ``float``. This change has actually been planned since " | ||||
"Python 2.2 which was released in 2002. Since then users have been encouraged" | ||||
" to add ``from __future__ import division`` to any and all files which use " | ||||
"the ``/`` and ``//`` operators or to be running the interpreter with the " | ||||
"``-Q`` flag. If you have not been doing this then you will need to go " | ||||
"through your code and do two things:" | ||||
"Python 2.2 which was released in 2002. Since then users have been encouraged " | ||||
"to add ``from __future__ import division`` to any and all files which use " | ||||
"the ``/`` and ``//`` operators or to be running the interpreter with the ``-" | ||||
"Q`` flag. If you have not been doing this then you will need to go through " | ||||
"your code and do two things:" | ||||
msgstr "" | ||||
"Dans Python 3, ``5 / 2 == 2.5`` et non ``2``; toutes les divisions entre des" | ||||
" valeurs ``int`` renvoient un ``float``. Ce changement était en réalité " | ||||
"Dans Python 3, ``5 / 2 == 2.5`` et non ``2``; toutes les divisions entre des " | ||||
"valeurs ``int`` renvoient un ``float``. Ce changement était en réalité " | ||||
"planifié depuis Python 2.2, publié en 2002. Depuis cette date, les " | ||||
"utilisateurs ont été encouragés à ajouter ``from __future__ import " | ||||
"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 :" | ||||
"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 :" | ||||
| ||||
#: ../Doc/howto/pyporting.rst:172 | ||||
msgid "Add ``from __future__ import division`` to your files" | ||||
| | @ -426,13 +426,12 @@ msgstr "" | |||
msgid "" | ||||
"The reason that ``/`` isn't simply translated to ``//`` automatically is " | ||||
"that if an object defines a ``__truediv__`` method but not ``__floordiv__`` " | ||||
"then your code would begin to fail (e.g. a user-defined class that uses " | ||||
"``/`` to signify some operation but not ``//`` for the same thing or at " | ||||
"all)." | ||||
"then your code would begin to fail (e.g. a user-defined class that uses ``/" | ||||
"`` to signify some operation but not ``//`` for the same thing or at all)." | ||||
msgstr "" | ||||
"La raison pour laquelle ``/`` n'est pas simplement remplacé par ``//`` " | ||||
"automatiquement est que si un objet définit une méthode ``__truediv__`` mais" | ||||
" pas de méthode ``__floordiv__``, alors votre code pourrait produire une " | ||||
"automatiquement est que si un objet définit une méthode ``__truediv__`` mais " | ||||
"pas de méthode ``__floordiv__``, alors votre code pourrait produire une " | ||||
"erreur (par exemple, une classe définie par l'utilisateur qui utilise ``/`` " | ||||
"pour définir une opération quelconque mais pour laquelle ``//`` n'a pas du " | ||||
"tout la même signification, voire n'est pas utilisé du tout)." | ||||
| | @ -452,16 +451,16 @@ msgid "" | |||
"supporting multiple languages as APIs wouldn't bother explicitly supporting " | ||||
"``unicode`` when they claimed text data support." | ||||
msgstr "" | ||||
"Dans Python 2, il était possible d'utiliser le type ``str`` pour du texte et" | ||||
" pour des données binaires. Malheureusement cet amalgame entre deux concepts" | ||||
" différents peut conduire à du code fragile pouvant parfois fonctionner pour" | ||||
" les deux types de données et parfois non. Cela a également conduit à des " | ||||
"API confuses si les auteurs ne déclaraient pas explicitement que quelque " | ||||
"chose qui acceptait ``str`` était compatible avec du texte ou des données " | ||||
"binaires et pas un seul des deux types. Cela a compliqué la situation pour " | ||||
"les personnes devant gérer plusieurs langages avec des API qui ne se " | ||||
"préoccupaient pas de la gestion de ``unicode`` lorsqu'elles affirmaient être" | ||||
" compatibles avec des données au format texte." | ||||
"Dans Python 2, il était possible d'utiliser le type ``str`` pour du texte et " | ||||
"pour des données binaires. Malheureusement cet amalgame entre deux concepts " | ||||
"différents peut conduire à du code fragile pouvant parfois fonctionner pour " | ||||
"les deux types de données et parfois non. Cela a également conduit à des API " | ||||
"confuses si les auteurs ne déclaraient pas explicitement que quelque chose " | ||||
"qui acceptait ``str`` était compatible avec du texte ou des données binaires " | ||||
"et pas un seul des deux types. Cela a compliqué la situation pour les " | ||||
"personnes devant gérer plusieurs langages avec des API qui ne se " | ||||
"préoccupaient pas de la gestion de ``unicode`` lorsqu'elles affirmaient être " | ||||
"compatibles avec des données au format texte." | ||||
| ||||
#: ../Doc/howto/pyporting.rst:194 | ||||
msgid "" | ||||
| | @ -486,11 +485,11 @@ msgstr "" | |||
| ||||
#: ../Doc/howto/pyporting.rst:203 | ||||
msgid "" | ||||
"To start, you will need to decide which APIs take text and which take binary" | ||||
" (it is **highly** recommended you don't design APIs that can take both due " | ||||
"To start, you will need to decide which APIs take text and which take binary " | ||||
"(it is **highly** recommended you don't design APIs that can take both due " | ||||
"to the difficulty of keeping the code working; as stated earlier it is " | ||||
"difficult to do well). In Python 2 this means making sure the APIs that take" | ||||
" text can work with ``unicode`` and those that work with binary data work " | ||||
"difficult to do well). In Python 2 this means making sure the APIs that take " | ||||
"text can work with ``unicode`` and those that work with binary data work " | ||||
"with the ``bytes`` type from Python 3 (which is a subset of ``str`` in " | ||||
"Python 2 and acts as an alias for ``bytes`` type in Python 2). Usually the " | ||||
"biggest issue is realizing which methods exist on which types in Python 2 & " | ||||
| | @ -498,9 +497,9 @@ msgid "" | |||
"Python 3, for binary that's ``str``/``bytes`` in Python 2 and ``bytes`` in " | ||||
"Python 3). The following table lists the **unique** methods of each data " | ||||
"type across Python 2 & 3 (e.g., the ``decode()`` method is usable on the " | ||||
"equivalent binary data type in either Python 2 or 3, but it can't be used by" | ||||
" the textual data type consistently between Python 2 and 3 because ``str`` " | ||||
"in Python 3 doesn't have the method). Do note that as of Python 3.5 the " | ||||
"equivalent binary data type in either Python 2 or 3, but it can't be used by " | ||||
"the textual data type consistently between Python 2 and 3 because ``str`` in " | ||||
"Python 3 doesn't have the method). Do note that as of Python 3.5 the " | ||||
"``__mod__`` method was added to the bytes type." | ||||
msgstr "" | ||||
"Pour commencer, vous devrez choisir quelles API travaillent sur du texte et " | ||||
| | @ -510,13 +509,13 @@ msgstr "" | |||
"signifie s'assurer que les API recevant du texte en entrée peuvent gérer " | ||||
"``unicode`` et celles qui reçoivent des données binaires fonctionnent avec " | ||||
"le type ``bytes`` de Python 3 (qui est un sous-ensemble de ``str`` dans " | ||||
"Python 2 et opère comme un alias du type ``bytes`` de Python 2). En général," | ||||
" le principal problème consiste à inventorier quelles méthodes existent et " | ||||
"Python 2 et opère comme un alias du type ``bytes`` de Python 2). En général, " | ||||
"le principal problème consiste à inventorier quelles méthodes existent et " | ||||
"opèrent sur quel type dans Python & 3 simultanément (pour le texte, il " | ||||
"s'agit de ``unicode`` dans Python 2 et ``str`` dans Python 3, pour le " | ||||
"binaire il s'agit de ``str``/``bytes`` dans Python 2 et ``bytes`` dans " | ||||
"Python 3). Le tableau ci-dessous liste les méthodes **spécifiques** à chaque" | ||||
" type de données dans Python 2 et 3 (par exemple, la méthode ``decode()`` " | ||||
"Python 3). Le tableau ci-dessous liste les méthodes **spécifiques** à chaque " | ||||
"type de données dans Python 2 et 3 (par exemple, la méthode ``decode()`` " | ||||
"peut être utilisée sur des données binaires équivalentes en Python 2 et 3, " | ||||
"mais ne peut pas être utilisée de la même façon sur le type texte en Python " | ||||
"2 et 3 car le type ``str`` de Python 3 ne possède pas de telle méthode). " | ||||
| | @ -559,11 +558,10 @@ msgstr "isnumeric" | |||
msgid "" | ||||
"Making the distinction easier to handle can be accomplished by encoding and " | ||||
"decoding between binary data and text at the edge of your code. This means " | ||||
"that when you receive text in binary data, you should immediately decode it." | ||||
" And if your code needs to send text as binary data then encode it as late " | ||||
"as possible. This allows your code to work with only text internally and " | ||||
"thus eliminates having to keep track of what type of data you are working " | ||||
"with." | ||||
"that when you receive text in binary data, you should immediately decode it. " | ||||
"And if your code needs to send text as binary data then encode it as late as " | ||||
"possible. This allows your code to work with only text internally and thus " | ||||
"eliminates having to keep track of what type of data you are working with." | ||||
msgstr "" | ||||
"Vous pouvez rendre le problème plus simple à gérer en réalisant les " | ||||
"opérations d'encodage et de décodage entre données binaires et texte aux " | ||||
| | @ -578,8 +576,8 @@ msgstr "" | |||
msgid "" | ||||
"The next issue is making sure you know whether the string literals in your " | ||||
"code represent text or binary data. You should add a ``b`` prefix to any " | ||||
"literal that presents binary data. For text you should add a ``u`` prefix to" | ||||
" the text literal. (there is a :mod:`__future__` import to force all " | ||||
"literal that presents binary data. For text you should add a ``u`` prefix to " | ||||
"the text literal. (there is a :mod:`__future__` import to force all " | ||||
"unspecified literals to be Unicode, but usage has shown it isn't as " | ||||
"effective as adding a ``b`` or ``u`` prefix to all literals explicitly)" | ||||
msgstr "" | ||||
| | @ -597,33 +595,33 @@ msgid "" | |||
"As part of this dichotomy you also need to be careful about opening files. " | ||||
"Unless you have been working on Windows, there is a chance you have not " | ||||
"always bothered to add the ``b`` mode when opening a binary file (e.g., " | ||||
"``rb`` for binary reading). Under Python 3, binary files and text files are" | ||||
" clearly distinct and mutually incompatible; see the :mod:`io` module for " | ||||
"``rb`` for binary reading). Under Python 3, binary files and text files are " | ||||
"clearly distinct and mutually incompatible; see the :mod:`io` module for " | ||||
"details. Therefore, you **must** make a decision of whether a file will be " | ||||
"used for binary access (allowing binary data to be read and/or written) or " | ||||
"textual access (allowing text data to be read and/or written). You should " | ||||
"also use :func:`io.open` for opening files instead of the built-in " | ||||
":func:`open` function as the :mod:`io` module is consistent from Python 2 to" | ||||
" 3 while the built-in :func:`open` function is not (in Python 3 it's " | ||||
"actually :func:`io.open`). Do not bother with the outdated practice of using" | ||||
" :func:`codecs.open` as that's only necessary for keeping compatibility with" | ||||
" Python 2.5." | ||||
"also use :func:`io.open` for opening files instead of the built-in :func:" | ||||
"`open` function as the :mod:`io` module is consistent from Python 2 to 3 " | ||||
"while the built-in :func:`open` function is not (in Python 3 it's actually :" | ||||
"func:`io.open`). Do not bother with the outdated practice of using :func:" | ||||
"`codecs.open` as that's only necessary for keeping compatibility with Python " | ||||
"2.5." | ||||
msgstr "" | ||||
"Une conséquence de cette dichotomie est que vous devez être prudents lors de" | ||||
" l'ouverture d'un fichier. À moins que vous travailliez sous Windows, il y a" | ||||
" des chances pour que vous ne vous soyez jamais préoccupé de spécifier le " | ||||
"Une conséquence de cette dichotomie est que vous devez être prudents lors de " | ||||
"l'ouverture d'un fichier. À moins que vous travailliez sous Windows, il y a " | ||||
"des chances pour que vous ne vous soyez jamais préoccupé de spécifier le " | ||||
"mode ``b`` lorsque vous ouvrez des fichiers binaires (par exemple ``rb`` " | ||||
"pour lire un fichier binaire). Sous Python 3, les fichiers binaire et texte " | ||||
"sont distincts et mutuellement incompatibles ; se référer au module " | ||||
":mod:`io` pour plus de détails. Ainsi vous **devez** décider lorsque vous " | ||||
"ouvrez un fichier si vous y accéderez en mode binaire (ce qui permet de lire" | ||||
" et écrire des données binaires) ou en mode texte (ce qui permet de lire et " | ||||
"sont distincts et mutuellement incompatibles ; se référer au module :mod:" | ||||
"`io` pour plus de détails. Ainsi vous **devez** décider lorsque vous ouvrez " | ||||
"un fichier si vous y accéderez en mode binaire (ce qui permet de lire et " | ||||
"écrire des données binaires) ou en mode texte (ce qui permet de lire et " | ||||
"écrire du texte). Vous devez également utiliser :func:`io.open` pour ouvrir " | ||||
"des fichiers plutôt que la fonction native :func:`open` étant donné que le " | ||||
"module :mod:`io` est cohérent de Python 2 à 3, ce qui n'est pas vrai pour la" | ||||
" fonction :func:`open` (en Python 3, il s'agit en réalité de " | ||||
":func:`io.open`). Ne cherchez pas à appliquer l'ancienne pratique consistant" | ||||
" à utiliser :func:`codecs.open` qui n'est nécessaire que pour préserver une " | ||||
"module :mod:`io` est cohérent de Python 2 à 3, ce qui n'est pas vrai pour la " | ||||
"fonction :func:`open` (en Python 3, il s'agit en réalité de :func:`io." | ||||
"open`). Ne cherchez pas à appliquer l'ancienne pratique consistant à " | ||||
"utiliser :func:`codecs.open` qui n'est nécessaire que pour préserver une " | ||||
"compatibilité avec Python 2.5." | ||||
| ||||
#: ../Doc/howto/pyporting.rst:261 | ||||
| | @ -634,34 +632,34 @@ msgid "" | |||
"== '3'``. But in Python 3, an integer argument to ``bytes`` will give you a " | ||||
"bytes object as long as the integer specified, filled with null bytes: " | ||||
"``bytes(3) == b'\\x00\\x00\\x00'``. A similar worry is necessary when " | ||||
"passing a bytes object to ``str``. In Python 2 you just get the bytes object" | ||||
" back: ``str(b'3') == b'3'``. But in Python 3 you get the string " | ||||
"passing a bytes object to ``str``. In Python 2 you just get the bytes object " | ||||
"back: ``str(b'3') == b'3'``. But in Python 3 you get the string " | ||||
"representation of the bytes object: ``str(b'3') == \"b'3'\"``." | ||||
msgstr "" | ||||
"Les constructeurs des types ``str`` et ``bytes`` possèdent une sémantique " | ||||
"différente pour les mêmes arguments sous Python 2 et 3. Passer un entier à " | ||||
"``bytes`` sous Python 2 produit une représentation de cet entier en chaîne " | ||||
"de caractères : ``bytes(3) == '3'``. Mais sous Python 3, fournir un argument" | ||||
" entier à ``bytes`` produit un objet *bytes* de la longueur de l'entier " | ||||
"de caractères : ``bytes(3) == '3'``. Mais sous Python 3, fournir un argument " | ||||
"entier à ``bytes`` produit un objet *bytes* de la longueur de l'entier " | ||||
"spécifié, rempli par des octets nuls : ``bytes(3) == b'\\x00\\x00\\x00'``. " | ||||
"La même prudence est nécessaire lorsque vous passez un objet *bytes* à " | ||||
"``str``. En Python 2, vous récupérez simplement l'objet *bytes* initial : " | ||||
"``str(b'3') == b'3'``. Mais en Python 3, vous récupérez la représentation en" | ||||
" chaîne de caractères de l'objet *bytes* : ``str(b'3') == \"b'3'\"``." | ||||
"``str(b'3') == b'3'``. Mais en Python 3, vous récupérez la représentation en " | ||||
"chaîne de caractères de l'objet *bytes* : ``str(b'3') == \"b'3'\"``." | ||||
| ||||
#: ../Doc/howto/pyporting.rst:271 | ||||
msgid "" | ||||
"Finally, the indexing of binary data requires careful handling (slicing does" | ||||
" **not** require any special handling). In Python 2, ``b'123'[1] == b'2'`` " | ||||
"Finally, the indexing of binary data requires careful handling (slicing does " | ||||
"**not** require any special handling). In Python 2, ``b'123'[1] == b'2'`` " | ||||
"while in Python 3 ``b'123'[1] == 50``. Because binary data is simply a " | ||||
"collection of binary numbers, Python 3 returns the integer value for the " | ||||
"byte you index on. But in Python 2 because ``bytes == str``, indexing " | ||||
"returns a one-item slice of bytes. The six_ project has a function named " | ||||
"``six.indexbytes()`` which will return an integer like in Python 3: " | ||||
"``six.indexbytes(b'123', 1)``." | ||||
"``six.indexbytes()`` which will return an integer like in Python 3: ``six." | ||||
"indexbytes(b'123', 1)``." | ||||
msgstr "" | ||||
"Enfin, l'indiçage des données binaires exige une manipulation prudente (bien" | ||||
" que le découpage, ou *slicing* en anglais, ne nécessite pas d'attention " | ||||
"Enfin, l'indiçage des données binaires exige une manipulation prudente (bien " | ||||
"que le découpage, ou *slicing* en anglais, ne nécessite pas d'attention " | ||||
"particulière). En Python 2, ``b'123'[1] == b'2'`` tandis qu'en Python 3 " | ||||
"``b'123'[1] == 50``. Puisque les données binaires ne sont simplement qu'une " | ||||
"collection de nombres en binaire, Python 3 renvoie la valeur entière de " | ||||
| | @ -729,8 +727,8 @@ msgid "" | |||
"Inevitably you will have code that has to choose what to do based on what " | ||||
"version of Python is running. The best way to do this is with feature " | ||||
"detection of whether the version of Python you're running under supports " | ||||
"what you need. If for some reason that doesn't work then you should make the" | ||||
" version check be against Python 2 and not Python 3. To help explain this, " | ||||
"what you need. If for some reason that doesn't work then you should make the " | ||||
"version check be against Python 2 and not Python 3. To help explain this, " | ||||
"let's look at an example." | ||||
msgstr "" | ||||
"Vous rencontrerez inévitablement du code devant décider quoi faire en " | ||||
| | @ -756,15 +754,15 @@ msgstr "" | |||
| ||||
#: ../Doc/howto/pyporting.rst:317 | ||||
msgid "" | ||||
"The problem with this code is what happens when Python 4 comes out? It would" | ||||
" be better to treat Python 2 as the exceptional case instead of Python 3 and" | ||||
" assume that future Python versions will be more compatible with Python 3 " | ||||
"The problem with this code is what happens when Python 4 comes out? It would " | ||||
"be better to treat Python 2 as the exceptional case instead of Python 3 and " | ||||
"assume that future Python versions will be more compatible with Python 3 " | ||||
"than Python 2::" | ||||
msgstr "" | ||||
"Le problème est le suivant : que se passe-t-il lorsque Python 4 est publié ?" | ||||
" Il serait préférable de traiter le cas Python 2 comme l'exception plutôt " | ||||
"que Python 3 et de supposer que les versions futures de Python 2 seront plus" | ||||
" compatibles avec Python 3 qu'avec Python 2 : ::" | ||||
"Le problème est le suivant : que se passe-t-il lorsque Python 4 est publié ? " | ||||
"Il serait préférable de traiter le cas Python 2 comme l'exception plutôt que " | ||||
"Python 3 et de supposer que les versions futures de Python 2 seront plus " | ||||
"compatibles avec Python 3 qu'avec Python 2 : ::" | ||||
| ||||
#: ../Doc/howto/pyporting.rst:329 | ||||
msgid "" | ||||
| | @ -774,8 +772,8 @@ msgid "" | |||
msgstr "" | ||||
"Néanmoins la meilleure solution est de ne pas chercher à déterminer la " | ||||
"version de Python mais plutôt à détecter les fonctionnalités disponibles. " | ||||
"Cela évite les problèmes potentiels liés aux erreurs de détection de version" | ||||
" et facilite la compatibilité future : ::" | ||||
"Cela évite les problèmes potentiels liés aux erreurs de détection de version " | ||||
"et facilite la compatibilité future : ::" | ||||
| ||||
#: ../Doc/howto/pyporting.rst:340 | ||||
msgid "Prevent compatibility regressions" | ||||
| | @ -783,15 +781,15 @@ msgstr "" | |||
| ||||
#: ../Doc/howto/pyporting.rst:342 | ||||
msgid "" | ||||
"Once you have fully translated your code to be compatible with Python 3, you" | ||||
" will want to make sure your code doesn't regress and stop working under " | ||||
"Python 3. This is especially true if you have a dependency which is blocking" | ||||
" you from actually running under Python 3 at the moment." | ||||
"Once you have fully translated your code to be compatible with Python 3, you " | ||||
"will want to make sure your code doesn't regress and stop working under " | ||||
"Python 3. This is especially true if you have a dependency which is blocking " | ||||
"you from actually running under Python 3 at the moment." | ||||
msgstr "" | ||||
"Une fois votre code traduit pour être compatible avec Python 3, vous devez " | ||||
"vous assurer que votre code n'a pas régressé ou qu'il ne fonctionne pas sous" | ||||
" Python 3. Ceci est particulièrement important si une de vos dépendances " | ||||
"vous empêche de réellement exécuter le code sous Python 3 pour le moment." | ||||
"vous assurer que votre code n'a pas régressé ou qu'il ne fonctionne pas sous " | ||||
"Python 3. Ceci est particulièrement important si une de vos dépendances vous " | ||||
"empêche de réellement exécuter le code sous Python 3 pour le moment." | ||||
| ||||
#: ../Doc/howto/pyporting.rst:347 | ||||
msgid "" | ||||
| | @ -842,15 +840,15 @@ msgid "" | |||
"to care about whether your dependencies have also been ported. The " | ||||
"caniusepython3_ project was created to help you determine which projects -- " | ||||
"directly or indirectly -- are blocking you from supporting Python 3. There " | ||||
"is both a command-line tool as well as a web interface at " | ||||
"https://caniusepython3.com." | ||||
"is both a command-line tool as well as a web interface at https://" | ||||
"caniusepython3.com." | ||||
msgstr "" | ||||
"**Après** avoir rendu votre code compatible avec Python 3, vous devez " | ||||
"commencer à vous intéresser au portage de vos dépendances. Le projet " | ||||
"caniusepython3_ a été créé afin de vous aider à déterminer quels projets " | ||||
"sont bloquants dans votre support de Python 3, directement ou indirectement." | ||||
" Il existe un outil en ligne de commande ainsi qu'une interface web : " | ||||
"https://caniusepython3.com." | ||||
"sont bloquants dans votre support de Python 3, directement ou indirectement. " | ||||
"Il existe un outil en ligne de commande ainsi qu'une interface web : https://" | ||||
"caniusepython3.com." | ||||
| ||||
#: ../Doc/howto/pyporting.rst:377 | ||||
msgid "" | ||||
| | @ -862,8 +860,8 @@ msgid "" | |||
msgstr "" | ||||
"Le projet fournit également du code intégrable dans votre suite de test qui " | ||||
"déclenchera un échec de test lorsque plus aucune de vos dépendances n'est " | ||||
"bloquante pour l'utilisation de Python 3. Cela vous permet de ne pas avoir à" | ||||
" vérifier manuellement vos dépendances et d'être notifié rapidement quand " | ||||
"bloquante pour l'utilisation de Python 3. Cela vous permet de ne pas avoir à " | ||||
"vérifier manuellement vos dépendances et d'être notifié rapidement quand " | ||||
"vous pouvez exécuter votre application avec Python 3." | ||||
| ||||
#: ../Doc/howto/pyporting.rst:384 | ||||
| | @ -881,11 +879,11 @@ msgid "" | |||
"classifiers for each major/minor version of Python you now support." | ||||
msgstr "" | ||||
"Une fois que votre code fonctionne sous Python 3, vous devez mettre à jour " | ||||
"vos classeurs dans votre ``setup.py`` pour inclure ``Programming Language ::" | ||||
" Python :: 3`` et non seulement le support de Python 2. Cela signifiera à " | ||||
"vos classeurs dans votre ``setup.py`` pour inclure ``Programming Language :: " | ||||
"Python :: 3`` et non seulement le support de Python 2. Cela signifiera à " | ||||
"quiconque utilise votre code que vous gérez Python 2 **et** 3. Dans l'idéal " | ||||
"vous devrez aussi ajouter une mention pour chaque version majeure/mineure de" | ||||
" Python que vous supportez désormais." | ||||
"vous devrez aussi ajouter une mention pour chaque version majeure/mineure de " | ||||
"Python que vous supportez désormais." | ||||
| ||||
#: ../Doc/howto/pyporting.rst:394 | ||||
msgid "Use continuous integration to stay compatible" | ||||
| | @ -900,8 +898,8 @@ msgid "" | |||
"accidentally break Python 2 or 3 support." | ||||
msgstr "" | ||||
"Une fois que vous êtes en mesure d'exécuter votre code sous Python 3, vous " | ||||
"devrez vous assurer que celui-ci fonctionne toujours pour Python 2 & 3. tox_" | ||||
" est vraisemblablement le meilleur outil pour exécuter vos tests avec " | ||||
"devrez vous assurer que celui-ci fonctionne toujours pour Python 2 & 3. tox_ " | ||||
"est vraisemblablement le meilleur outil pour exécuter vos tests avec " | ||||
"plusieurs interpréteurs Python. Vous pouvez alors intégrer *tox* à votre " | ||||
"système d'intégration continue afin de ne jamais accidentellement casser " | ||||
"votre gestion de Python 2 ou 3." | ||||
| | @ -920,12 +918,12 @@ msgstr "" | |||
"Vous pouvez également utiliser l'option ``-bb`` de l'interpréteur Python 3 " | ||||
"afin de déclencher une exception lorsque vous comparez des *bytes* à des " | ||||
"chaînes de caractères ou à un entier (cette deuxième possibilité est " | ||||
"disponible à partir de Python 3.5). Par défaut, des comparaisons entre types" | ||||
" différents renvoient simplement ``False`` mais si vous avez fait une erreur" | ||||
" dans votre séparation de la gestion texte/données binaires ou votre " | ||||
"indiçage des *bytes*, vous ne trouverez pas facilement le bogue. Ce drapeau " | ||||
"lève une exception lorsque ce genre de comparaison apparaît, facilitant " | ||||
"ainsi sa identification et sa localisation." | ||||
"disponible à partir de Python 3.5). Par défaut, des comparaisons entre types " | ||||
"différents renvoient simplement ``False`` mais si vous avez fait une erreur " | ||||
"dans votre séparation de la gestion texte/données binaires ou votre indiçage " | ||||
"des *bytes*, vous ne trouverez pas facilement le bogue. Ce drapeau lève une " | ||||
"exception lorsque ce genre de comparaison apparaît, facilitant ainsi sa " | ||||
"identification et sa localisation." | ||||
| ||||
#: ../Doc/howto/pyporting.rst:410 | ||||
msgid "" | ||||
| | @ -948,12 +946,12 @@ msgstr "Envisager l'utilisation d'un vérificateur de type statique optionnel" | |||
msgid "" | ||||
"Another way to help port your code is to use a static type checker like " | ||||
"mypy_ or pytype_ on your code. These tools can be used to analyze your code " | ||||
"as if it's being run under Python 2, then you can run the tool a second time" | ||||
" as if your code is running under Python 3. By running a static type checker" | ||||
" twice like this you can discover if you're e.g. misusing binary data type " | ||||
"in one version of Python compared to another. If you add optional type hints" | ||||
" to your code you can also explicitly state whether your APIs use textual or" | ||||
" binary data, helping to make sure everything functions as expected in both " | ||||
"as if it's being run under Python 2, then you can run the tool a second time " | ||||
"as if your code is running under Python 3. By running a static type checker " | ||||
"twice like this you can discover if you're e.g. misusing binary data type in " | ||||
"one version of Python compared to another. If you add optional type hints to " | ||||
"your code you can also explicitly state whether your APIs use textual or " | ||||
"binary data, helping to make sure everything functions as expected in both " | ||||
"versions of Python." | ||||
msgstr "" | ||||
"Une autre façon de faciliter le portage de votre code est d'utiliser un " | ||||
| | @ -961,9 +959,9 @@ msgstr "" | |||
"être utilisés pour analyser votre code comme s'il était exécuté sous Python " | ||||
"2, puis une seconde fois comme s'il était exécuté sous Python 3. " | ||||
"L'utilisation double d'un vérificateur de type statique de cette façon " | ||||
"permet de détecter si, par exemple, vous faites une utilisation inappropriée" | ||||
" des types de données binaires dans une version de Python par rapport à " | ||||
"l'autre. Si vous ajoutez les indices optionnels de typage à votre code, vous" | ||||
" pouvez alors explicitement déclarer que vos API attendent des données " | ||||
"permet de détecter si, par exemple, vous faites une utilisation inappropriée " | ||||
"des types de données binaires dans une version de Python par rapport à " | ||||
"l'autre. Si vous ajoutez les indices optionnels de typage à votre code, vous " | ||||
"pouvez alors explicitement déclarer que vos API attendent des données " | ||||
"binaires ou du texte, ce qui facilite alors la vérification du comportement " | ||||
"de votre code dans les deux versions de Python." | ||||
| | | |||
Loading…
Add table
Add a link
Reference in a new issue