# Copyright (C) 2001-2020, Python Software Foundation
# This file is distributed under the same license as the Python package.
# Maintained by the python-doc-es workteam.
# docs-es@python.org /
# https://mail.python.org/mailman3/lists/docs-es.python.org/
# Check https://github.com/python/python-docs-es/blob/3.8/TRANSLATORS to get
# the list of volunteers
#
msgid ""
msgstr ""
"Project-Id-Version: Python 3.8\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-10-25 19:47+0200\n"
"PO-Revision-Date: 2020-07-22 13:24-0300\n"
"Last-Translator: \n"
"Language: es\n"
"Language-Team: python-doc-es\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.10.3\n"
#: ../Doc/library/bisect.rst:2
msgid ":mod:`bisect` --- Array bisection algorithm"
msgstr ":mod:`bisect` --- Algoritmo de bisección de arreglos"
#: ../Doc/library/bisect.rst:10
msgid "**Source code:** :source:`Lib/bisect.py`"
msgstr "**Código fuente:** :source:`Lib/bisect.py`"
#: ../Doc/library/bisect.rst:14
msgid ""
"This module provides support for maintaining a list in sorted order without "
"having to sort the list after each insertion. For long lists of items with "
"expensive comparison operations, this can be an improvement over the more "
"common approach. The module is called :mod:`bisect` because it uses a basic "
"bisection algorithm to do its work. The source code may be most useful as a "
"working example of the algorithm (the boundary conditions are already "
"right!)."
msgstr ""
"Este módulo brinda soporte para mantener una lista ordenada sin tener que "
"reordenar la lista tras cada nueva inserción. Para listas largas de "
"elementos que tienen operaciones de comparación costosas, será una mejora "
"respecto a la estrategia más habitual. El módulo se llama :mod:`bisect` "
"porque usa un algoritmo de bisección básico para lograr su objetivo. El "
"código fuente puede ser útil como ejemplo del algoritmo en funcionamiento "
"(¡las precondiciones ya están bien de antemano!)."
#: ../Doc/library/bisect.rst:21
msgid "The following functions are provided:"
msgstr "Las siguientes funciones están disponibles:"
#: ../Doc/library/bisect.rst:26
msgid ""
"Locate the insertion point for *x* in *a* to maintain sorted order. The "
"parameters *lo* and *hi* may be used to specify a subset of the list which "
"should be considered; by default the entire list is used. If *x* is already "
"present in *a*, the insertion point will be before (to the left of) any "
"existing entries. The return value is suitable for use as the first "
"parameter to ``list.insert()`` assuming that *a* is already sorted."
msgstr ""
"Ubicar el punto de inserción para *x* en *a* para mantener el ordenamiento. "
"Los parámetros *lo* (inferior) y *hi* (superior) pueden utilizarse para "
"especificar un subconjunto (*subset*) de la lista que debería considerarse. "
"Por defecto, se utiliza la lista completa. Si *x* ya está presente en *a*, "
"el punto de inserción será antes (a la izquierda de) cualquier elemento "
"existente. El valor de retorno es adecuado para que se utilice como primer "
"parámetro para ``list.insert()``, suponiendo que *a* ya está ordenada."
#: ../Doc/library/bisect.rst:33
msgid ""
"The returned insertion point *i* partitions the array *a* into two halves so "
"that ``all(val < x for val in a[lo : i])`` for the left side and ``all(val "
">= x for val in a[i : hi])`` for the right side."
msgstr ""
"El punto de inserción retornado *i* divide el arreglo *a* en dos mitades, de "
"modo que ``all(val < x for val in a[lo : i])`` para el lado izquierdo y "
"``all(val >= x for val in a[i : hi])`` para el lado derecho."
#: ../Doc/library/bisect.rst:37 ../Doc/library/bisect.rst:58
msgid ""
"*key* specifies a :term:`key function` of one argument that is used to "
"extract a comparison key from each element in the array. To support "
"searching complex records, the key function is not applied to the *x* value."
msgstr ""
#: ../Doc/library/bisect.rst:41 ../Doc/library/bisect.rst:62
msgid ""
"If *key* is ``None``, the elements are compared directly with no intervening "
"function call."
msgstr ""
#: ../Doc/library/bisect.rst:44 ../Doc/library/bisect.rst:65
#: ../Doc/library/bisect.rst:83 ../Doc/library/bisect.rst:103
msgid "Added the *key* parameter."
msgstr "Se agregó el parámetro *key*."
#: ../Doc/library/bisect.rst:51
msgid ""
"Similar to :func:`bisect_left`, but returns an insertion point which comes "
"after (to the right of) any existing entries of *x* in *a*."
msgstr ""
"Similar a :func:`bisect_left`, pero retorna un punto de inserción que viene "
"después (a la derecha de) cualquier entrada de *x* en *a*."
#: ../Doc/library/bisect.rst:54
msgid ""
"The returned insertion point *i* partitions the array *a* into two halves so "
"that ``all(val <= x for val in a[lo : i])`` for the left side and ``all(val "
"> x for val in a[i : hi])`` for the right side."
msgstr ""
"El punto de inserción retornado *i* divide el arreglo *a* en dos mitades, de "
"modo que ``all(val <= x for val in a[lo : i])`` para el lado izquierdo y "
"``all(val > x for val in a[i : hi])`` para el lado derecho."
#: ../Doc/library/bisect.rst:71
msgid "Insert *x* in *a* in sorted order."
msgstr "Inserte *x* en *a* en orden ordenado."
#: ../Doc/library/bisect.rst:73
msgid ""
"This function first runs :func:`bisect_left` to locate an insertion point. "
"Next, it runs the :meth:`insert` method on *a* to insert *x* at the "
"appropriate position to maintain sort order."
msgstr ""
"Esta función primero ejecuta :func:`bisect_left` para localizar un punto de "
"inserción. A continuación, ejecuta el método :meth:`insert` en *a* para "
"insertar *x* en la posición adecuada para mantener el orden de clasificación."
#: ../Doc/library/bisect.rst:77 ../Doc/library/bisect.rst:97
msgid ""
"To support inserting records in a table, the *key* function (if any) is "
"applied to *x* for the search step but not for the insertion step."
msgstr ""
#: ../Doc/library/bisect.rst:80 ../Doc/library/bisect.rst:100
msgid ""
"Keep in mind that the ``O(log n)`` search is dominated by the slow O(n) "
"insertion step."
msgstr ""
"Tenga en cuenta que la búsqueda ``O(log n)`` está dominada por el lento paso "
"de inserción O (n)."
#: ../Doc/library/bisect.rst:90
msgid ""
"Similar to :func:`insort_left`, but inserting *x* in *a* after any existing "
"entries of *x*."
msgstr ""
"Similar a :func:`insort_left`, pero inserta *x* en *a* después de cualquier "
"entrada *x* existente."
#: ../Doc/library/bisect.rst:93
msgid ""
"This function first runs :func:`bisect_right` to locate an insertion point. "
"Next, it runs the :meth:`insert` method on *a* to insert *x* at the "
"appropriate position to maintain sort order."
msgstr ""
"Esta función primero ejecuta :func:`bisect_right` para localizar un punto de "
"inserción. A continuación, ejecuta el método :meth:`insert` en *a* para "
"insertar *x* en la posición adecuada para mantener el orden de clasificación."
#: ../Doc/library/bisect.rst:108
msgid "Performance Notes"
msgstr "Notas de rendimiento"
#: ../Doc/library/bisect.rst:110
msgid ""
"When writing time sensitive code using *bisect()* and *insort()*, keep these "
"thoughts in mind:"
msgstr ""
"Al escribir código sensible al tiempo usando *bisect()* y *insort()*, tenga "
"en cuenta estos pensamientos:"
#: ../Doc/library/bisect.rst:113
msgid ""
"Bisection is effective for searching ranges of values. For locating specific "
"values, dictionaries are more performant."
msgstr ""
"La bisección es eficaz para buscar rangos de valores. Para localizar valores "
"específicos, los diccionarios son más eficaces."
#: ../Doc/library/bisect.rst:116
msgid ""
"The *insort()* functions are ``O(n)`` because the logarithmic search step is "
"dominated by the linear time insertion step."
msgstr ""
"Las funciones *insort()* son ``O(n)`` porque el paso de búsqueda logarítmica "
"está dominado por el paso de inserción de tiempo lineal."
#: ../Doc/library/bisect.rst:119
msgid ""
"The search functions are stateless and discard key function results after "
"they are used. Consequently, if the search functions are used in a loop, "
"the key function may be called again and again on the same array elements. "
"If the key function isn't fast, consider wrapping it with :func:`functools."
"cache` to avoid duplicate computations. Alternatively, consider searching "
"an array of precomputed keys to locate the insertion point (as shown in the "
"examples section below)."
msgstr ""
"Las funciones de búsqueda no tienen estado y descartan los resultados de las "
"funciones clave después de su uso. En consecuencia, si las funciones de "
"búsqueda se utilizan en un bucle, la función clave se puede llamar una y "
"otra vez en los mismos elementos del arreglo. Si la función clave no es "
"rápida, considere envolverla con :func:`functools.cache` para evitar "
"cálculos duplicados. Alternativamente, considere buscar un arreglo de claves "
"precalculadas para ubicar el punto de inserción (como se muestra en la "
"sección de ejemplos a continuación)."
#: ../Doc/library/bisect.rst:129
#, fuzzy
msgid ""
"`Sorted Collections `_ is a "
"high performance module that uses *bisect* to managed sorted collections of "
"data."
msgstr ""
"`Sorted Collections `_ es "
"un módulo de alto rendimiento que utiliza *bisect* para gestionar "
"colecciones de datos ordenadas."
#: ../Doc/library/bisect.rst:133
msgid ""
"The `SortedCollection recipe `_ uses bisect to build a full-featured collection class "
"with straight-forward search methods and support for a key-function. The "
"keys are precomputed to save unnecessary calls to the key function during "
"searches."
msgstr ""
"El `SortedCollection recipe `_ usa bisect para construir una clase de colección con "
"todas las funciones con métodos de búsqueda sencillos y soporte para una "
"función clave. Las teclas se calculan previamente para ahorrar llamadas "
"innecesarias a la función de la tecla durante las búsquedas."
#: ../Doc/library/bisect.rst:141
msgid "Searching Sorted Lists"
msgstr "Búsqueda en listas ordenadas"
#: ../Doc/library/bisect.rst:143
msgid ""
"The above :func:`bisect` functions are useful for finding insertion points "
"but can be tricky or awkward to use for common searching tasks. The "
"following five functions show how to transform them into the standard "
"lookups for sorted lists::"
msgstr ""
"Las funciones anteriores :func:`bisect` son útiles para encontrar puntos de "
"inserción, pero pueden resultar difíciles o engorrosas para tareas de "
"búsqueda habituales. Las cinco funciones que siguen muestran cómo "
"convertirlas en búsquedas estándar para listas ordenadas::"
#: ../Doc/library/bisect.rst:185
msgid "Examples"
msgstr "Ejemplos"
#: ../Doc/library/bisect.rst:189
msgid ""
"The :func:`bisect` function can be useful for numeric table lookups. This "
"example uses :func:`bisect` to look up a letter grade for an exam score "
"(say) based on a set of ordered numeric breakpoints: 90 and up is an 'A', 80 "
"to 89 is a 'B', and so on::"
msgstr ""
"La función :func:`bisect` puede ser útil para búsquedas en tablas numéricas. "
"Este ejemplo utiliza :func:`bisect` para buscar una calificación de un "
"examen dada por una letra, basada en un conjunto de marcas numéricas "
"ordenadas: 90 o más es una 'A', de 80 a 89 es una 'B', y así sucesivamente::"
#: ../Doc/library/bisect.rst:201
msgid ""
"The :func:`bisect` and :func:`insort` functions also work with lists of "
"tuples. The *key* argument can serve to extract the field used for ordering "
"records in a table::"
msgstr ""
#: ../Doc/library/bisect.rst:235
#, fuzzy
msgid ""
"If the key function is expensive, it is possible to avoid repeated function "
"calls by searching a list of precomputed keys to find the index of a record::"
msgstr ""
"Una técnica para evitar llamadas repetidas a una función de tecla es buscar "
"en una lista de teclas precalculadas para encontrar el índice de un registro:"
#~ msgid ""
#~ "*key* specifies a :term:`key function` of one argument that is used to "
#~ "extract a comparison key from each input element. The default value is "
#~ "``None`` (compare the elements directly)."
#~ msgstr ""
#~ "*key* especifica un :term:`key function` de un argumento que se utiliza "
#~ "para extraer una clave de comparación de cada elemento de entrada. El "
#~ "valor predeterminado es ``None`` (compare los elementos directamente)."