1
0
Fork 0
python-docs-fr/howto/sorting.po

314 lines
9.5 KiB
Plaintext
Raw Normal View History

2016-10-30 09:46:26 +00:00
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2001-2016, Python Software Foundation
# This file is distributed under the same license as the Python package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Python 3.6\n"
"Report-Msgid-Bugs-To: \n"
2017-04-02 20:14:06 +00:00
"POT-Creation-Date: 2017-04-02 22:11+0200\n"
2016-10-30 09:46:26 +00:00
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
2017-04-02 20:14:06 +00:00
"Language: \n"
2016-10-30 09:46:26 +00:00
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../Doc/howto/sorting.rst:4
msgid "Sorting HOW TO"
msgstr ""
#: ../Doc/howto/sorting.rst:6
msgid "Andrew Dalke and Raymond Hettinger"
msgstr ""
#: ../Doc/howto/sorting.rst:7
msgid "0.1"
msgstr ""
#: ../Doc/howto/sorting.rst:10
msgid ""
"Python lists have a built-in :meth:`list.sort` method that modifies the list "
"in-place. There is also a :func:`sorted` built-in function that builds a "
"new sorted list from an iterable."
msgstr ""
#: ../Doc/howto/sorting.rst:14
msgid ""
"In this document, we explore the various techniques for sorting data using "
"Python."
msgstr ""
#: ../Doc/howto/sorting.rst:18
msgid "Sorting Basics"
msgstr ""
#: ../Doc/howto/sorting.rst:20
msgid ""
"A simple ascending sort is very easy: just call the :func:`sorted` function. "
"It returns a new sorted list::"
msgstr ""
#: ../Doc/howto/sorting.rst:26
msgid ""
"You can also use the :meth:`list.sort` method. It modifies the list in-place "
"(and returns ``None`` to avoid confusion). Usually it's less convenient "
"than :func:`sorted` - but if you don't need the original list, it's slightly "
"more efficient."
msgstr ""
#: ../Doc/howto/sorting.rst:36
msgid ""
"Another difference is that the :meth:`list.sort` method is only defined for "
"lists. In contrast, the :func:`sorted` function accepts any iterable."
msgstr ""
#: ../Doc/howto/sorting.rst:43
msgid "Key Functions"
msgstr ""
#: ../Doc/howto/sorting.rst:45
msgid ""
"Both :meth:`list.sort` and :func:`sorted` have a *key* parameter to specify "
"a function to be called on each list element prior to making comparisons."
msgstr ""
#: ../Doc/howto/sorting.rst:48
msgid "For example, here's a case-insensitive string comparison:"
msgstr ""
#: ../Doc/howto/sorting.rst:53
msgid ""
"The value of the *key* parameter should be a function that takes a single "
"argument and returns a key to use for sorting purposes. This technique is "
"fast because the key function is called exactly once for each input record."
msgstr ""
#: ../Doc/howto/sorting.rst:57
msgid ""
"A common pattern is to sort complex objects using some of the object's "
"indices as keys. For example:"
msgstr ""
#: ../Doc/howto/sorting.rst:68
msgid ""
"The same technique works for objects with named attributes. For example:"
msgstr ""
#: ../Doc/howto/sorting.rst:87
msgid "Operator Module Functions"
msgstr ""
#: ../Doc/howto/sorting.rst:89
msgid ""
"The key-function patterns shown above are very common, so Python provides "
"convenience functions to make accessor functions easier and faster. The :mod:"
"`operator` module has :func:`~operator.itemgetter`, :func:`~operator."
"attrgetter`, and a :func:`~operator.methodcaller` function."
msgstr ""
#: ../Doc/howto/sorting.rst:94
msgid "Using those functions, the above examples become simpler and faster:"
msgstr ""
#: ../Doc/howto/sorting.rst:104
msgid ""
"The operator module functions allow multiple levels of sorting. For example, "
"to sort by *grade* then by *age*:"
msgstr ""
#: ../Doc/howto/sorting.rst:114
msgid "Ascending and Descending"
msgstr ""
#: ../Doc/howto/sorting.rst:116
msgid ""
"Both :meth:`list.sort` and :func:`sorted` accept a *reverse* parameter with "
"a boolean value. This is used to flag descending sorts. For example, to get "
"the student data in reverse *age* order:"
msgstr ""
#: ../Doc/howto/sorting.rst:127
msgid "Sort Stability and Complex Sorts"
msgstr ""
#: ../Doc/howto/sorting.rst:129
msgid ""
"Sorts are guaranteed to be `stable <https://en.wikipedia.org/wiki/"
"Sorting_algorithm#Stability>`_\\. That means that when multiple records have "
"the same key, their original order is preserved."
msgstr ""
#: ../Doc/howto/sorting.rst:137
msgid ""
"Notice how the two records for *blue* retain their original order so that "
"``('blue', 1)`` is guaranteed to precede ``('blue', 2)``."
msgstr ""
#: ../Doc/howto/sorting.rst:140
msgid ""
"This wonderful property lets you build complex sorts in a series of sorting "
"steps. For example, to sort the student data by descending *grade* and then "
"ascending *age*, do the *age* sort first and then sort again using *grade*:"
msgstr ""
#: ../Doc/howto/sorting.rst:148
msgid ""
"The `Timsort <https://en.wikipedia.org/wiki/Timsort>`_ algorithm used in "
"Python does multiple sorts efficiently because it can take advantage of any "
"ordering already present in a dataset."
msgstr ""
#: ../Doc/howto/sorting.rst:153
msgid "The Old Way Using Decorate-Sort-Undecorate"
msgstr ""
#: ../Doc/howto/sorting.rst:155
msgid "This idiom is called Decorate-Sort-Undecorate after its three steps:"
msgstr ""
#: ../Doc/howto/sorting.rst:157
msgid ""
"First, the initial list is decorated with new values that control the sort "
"order."
msgstr ""
#: ../Doc/howto/sorting.rst:159
msgid "Second, the decorated list is sorted."
msgstr ""
#: ../Doc/howto/sorting.rst:161
msgid ""
"Finally, the decorations are removed, creating a list that contains only the "
"initial values in the new order."
msgstr ""
#: ../Doc/howto/sorting.rst:164
msgid ""
"For example, to sort the student data by *grade* using the DSU approach:"
msgstr ""
#: ../Doc/howto/sorting.rst:171
msgid ""
"This idiom works because tuples are compared lexicographically; the first "
"items are compared; if they are the same then the second items are compared, "
"and so on."
msgstr ""
#: ../Doc/howto/sorting.rst:175
msgid ""
"It is not strictly necessary in all cases to include the index *i* in the "
"decorated list, but including it gives two benefits:"
msgstr ""
#: ../Doc/howto/sorting.rst:178
msgid ""
"The sort is stable -- if two items have the same key, their order will be "
"preserved in the sorted list."
msgstr ""
#: ../Doc/howto/sorting.rst:181
msgid ""
"The original items do not have to be comparable because the ordering of the "
"decorated tuples will be determined by at most the first two items. So for "
"example the original list could contain complex numbers which cannot be "
"sorted directly."
msgstr ""
#: ../Doc/howto/sorting.rst:186
msgid ""
"Another name for this idiom is `Schwartzian transform <https://en.wikipedia."
"org/wiki/Schwartzian_transform>`_\\, after Randal L. Schwartz, who "
"popularized it among Perl programmers."
msgstr ""
#: ../Doc/howto/sorting.rst:190
msgid ""
"Now that Python sorting provides key-functions, this technique is not often "
"needed."
msgstr ""
#: ../Doc/howto/sorting.rst:194
msgid "The Old Way Using the *cmp* Parameter"
msgstr ""
#: ../Doc/howto/sorting.rst:196
msgid ""
"Many constructs given in this HOWTO assume Python 2.4 or later. Before that, "
"there was no :func:`sorted` builtin and :meth:`list.sort` took no keyword "
"arguments. Instead, all of the Py2.x versions supported a *cmp* parameter to "
"handle user specified comparison functions."
msgstr ""
#: ../Doc/howto/sorting.rst:201
msgid ""
"In Py3.0, the *cmp* parameter was removed entirely (as part of a larger "
"effort to simplify and unify the language, eliminating the conflict between "
"rich comparisons and the :meth:`__cmp__` magic method)."
msgstr ""
#: ../Doc/howto/sorting.rst:205
msgid ""
"In Py2.x, sort allowed an optional function which can be called for doing "
"the comparisons. That function should take two arguments to be compared and "
"then return a negative value for less-than, return zero if they are equal, "
"or return a positive value for greater-than. For example, we can do:"
msgstr ""
#: ../Doc/howto/sorting.rst:215
msgid "Or you can reverse the order of comparison with:"
msgstr ""
#: ../Doc/howto/sorting.rst:222
msgid ""
"When porting code from Python 2.x to 3.x, the situation can arise when you "
"have the user supplying a comparison function and you need to convert that "
"to a key function. The following wrapper makes that easy to do::"
msgstr ""
#: ../Doc/howto/sorting.rst:245
msgid "To convert to a key function, just wrap the old comparison function:"
msgstr ""
#: ../Doc/howto/sorting.rst:256
msgid ""
"In Python 3.2, the :func:`functools.cmp_to_key` function was added to the :"
"mod:`functools` module in the standard library."
msgstr ""
#: ../Doc/howto/sorting.rst:260
msgid "Odd and Ends"
msgstr ""
#: ../Doc/howto/sorting.rst:262
msgid ""
"For locale aware sorting, use :func:`locale.strxfrm` for a key function or :"
"func:`locale.strcoll` for a comparison function."
msgstr ""
#: ../Doc/howto/sorting.rst:265
msgid ""
"The *reverse* parameter still maintains sort stability (so that records with "
"equal keys retain the original order). Interestingly, that effect can be "
"simulated without the parameter by using the builtin :func:`reversed` "
"function twice:"
msgstr ""
#: ../Doc/howto/sorting.rst:277
msgid ""
"The sort routines are guaranteed to use :meth:`__lt__` when making "
"comparisons between two objects. So, it is easy to add a standard sort order "
"to a class by defining an :meth:`__lt__` method::"
msgstr ""
#: ../Doc/howto/sorting.rst:285
msgid ""
"Key functions need not depend directly on the objects being sorted. A key "
"function can also access external resources. For instance, if the student "
"grades are stored in a dictionary, they can be used to sort a separate list "
"of student names:"
msgstr ""