diff --git a/dictionaries/library_collections.txt b/dictionaries/library_collections.txt new file mode 100644 index 0000000000..047041855e --- /dev/null +++ b/dictionaries/library_collections.txt @@ -0,0 +1,31 @@ +Algorítmicamente +autodocumentado +actualizable +appending +appends +bag +bags +Counter +Counters +deque +deques +Deques +Django +Enthought +Factory +factory +iteración +mapeados +mapping +mappings +multiconjunto +multiconjuntos +pickling +popping +pops +pushing +reordenamiento +subclasificaciones +typename +field +names diff --git a/library/collections.po b/library/collections.po index 36bc29bd56..5c414930bf 100644 --- a/library/collections.po +++ b/library/collections.po @@ -6,27 +6,29 @@ # Check https://github.com/python/python-docs-es/blob/3.8/TRANSLATORS to # get the list of volunteers # -#, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.8\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2020-05-05 12:54+0200\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" +"PO-Revision-Date: 2020-11-20 10:41-0500\n" "Language-Team: python-doc-es\n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=utf-8\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Generated-By: Babel 2.8.0\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"Last-Translator: Javier Daza C\n" +"Language: es\n" +"X-Generator: Poedit 2.4.1\n" #: ../Doc/library/collections.rst:2 msgid ":mod:`collections` --- Container datatypes" -msgstr "" +msgstr ":mod:`collections` --- Tipos de datos contenedor" #: ../Doc/library/collections.rst:10 msgid "**Source code:** :source:`Lib/collections/__init__.py`" -msgstr "" +msgstr "**Source code:** :source:`Lib/collections/__init__.py`" #: ../Doc/library/collections.rst:20 msgid "" @@ -34,78 +36,94 @@ msgid "" "alternatives to Python's general purpose built-in containers, :class:" "`dict`, :class:`list`, :class:`set`, and :class:`tuple`." msgstr "" +"Este módulo implementa tipos de datos de contenedores especializados que " +"proporcionan alternativas a los contenedores integrados de uso general de " +"Python, :class:`dict`, :class:`list`, :class:`set`, and :class:`tuple`." #: ../Doc/library/collections.rst:25 msgid ":func:`namedtuple`" -msgstr "" +msgstr ":func:`namedtuple`" #: ../Doc/library/collections.rst:25 msgid "factory function for creating tuple subclasses with named fields" msgstr "" +"función *factory* para crear subclases de *tuplas* con campos con nombre" #: ../Doc/library/collections.rst:26 msgid ":class:`deque`" -msgstr "" +msgstr ":class:`deque`" #: ../Doc/library/collections.rst:26 msgid "list-like container with fast appends and pops on either end" msgstr "" +"contenedor similar a una lista con *appends* y *pops* rápidos en ambos " +"extremos" #: ../Doc/library/collections.rst:27 msgid ":class:`ChainMap`" -msgstr "" +msgstr ":class:`ChainMap`" #: ../Doc/library/collections.rst:27 msgid "dict-like class for creating a single view of multiple mappings" msgstr "" +"clase similar a *dict* para crear una vista única de múltiples *mapeados*" #: ../Doc/library/collections.rst:28 msgid ":class:`Counter`" -msgstr "" +msgstr ":class:`Counter`" #: ../Doc/library/collections.rst:28 msgid "dict subclass for counting hashable objects" -msgstr "" +msgstr "subclase de *dict* para contar objetos *hashables*" #: ../Doc/library/collections.rst:29 msgid ":class:`OrderedDict`" -msgstr "" +msgstr ":class:`OrderedDict`" #: ../Doc/library/collections.rst:29 msgid "dict subclass that remembers the order entries were added" msgstr "" +"subclase de *dict* que recuerda las entradas de la orden que se agregaron" #: ../Doc/library/collections.rst:30 msgid ":class:`defaultdict`" -msgstr "" +msgstr ":class:`defaultdict`" #: ../Doc/library/collections.rst:30 msgid "dict subclass that calls a factory function to supply missing values" msgstr "" +"subclase de *dict* que llama a una función de *factory* para suministrar " +"valores faltantes" #: ../Doc/library/collections.rst:31 msgid ":class:`UserDict`" -msgstr "" +msgstr ":class:`UserDict`" #: ../Doc/library/collections.rst:31 msgid "wrapper around dictionary objects for easier dict subclassing" msgstr "" +"envoltura alrededor de los objetos de diccionario para facilitar " +"subclasificaciones *dict*" #: ../Doc/library/collections.rst:32 msgid ":class:`UserList`" -msgstr "" +msgstr ":class:`UserList`" #: ../Doc/library/collections.rst:32 msgid "wrapper around list objects for easier list subclassing" msgstr "" +"envoltura alrededor de los objetos de lista para facilitar la " +"subclasificación de un *list*" #: ../Doc/library/collections.rst:33 msgid ":class:`UserString`" -msgstr "" +msgstr ":class:`UserString`" #: ../Doc/library/collections.rst:33 msgid "wrapper around string objects for easier string subclassing" msgstr "" +"envoltura alrededor de objetos de cadena para facilitar la subclasificación " +"de *string*" #: ../Doc/library/collections.rst:41 msgid "" @@ -113,10 +131,13 @@ msgid "" "module. For backwards compatibility, they continue to be visible in this " "module through Python 3.9." msgstr "" +"Trasladado :ref:`collections-abstract-base-classes` al modulo :mod:" +"`collections.abc`. Para compatibilidad hacia atrás, continúan siendo " +"visibles en este módulo a través de Python 3.9." #: ../Doc/library/collections.rst:43 msgid ":class:`ChainMap` objects" -msgstr "" +msgstr "Objetos :class:`ChainMap`" #: ../Doc/library/collections.rst:47 msgid "" @@ -125,11 +146,17 @@ msgid "" "than creating a new dictionary and running multiple :meth:`~dict.update` " "calls." msgstr "" +"Una clase :class:`ChainMap` se proporciona para vincular rápidamente una " +"serie de *mappings* de modo que puedan tratarse como una sola unidad. Suele " +"ser mucho más rápido que crear un diccionario nuevo y ejecutar varias " +"llamadas a :meth:`~dict.update`." #: ../Doc/library/collections.rst:51 msgid "" "The class can be used to simulate nested scopes and is useful in templating." msgstr "" +"La clase se puede utilizar para simular ámbitos anidados y es útil para " +"crear plantillas." #: ../Doc/library/collections.rst:55 msgid "" @@ -138,12 +165,19 @@ msgid "" "empty dictionary is provided so that a new chain always has at least one " "mapping." msgstr "" +"Un :class:`ChainMap` agrupa varios diccionarios u otros *mappings* para " +"crear una vista única y actualizable. Si no se especifican *maps*, se " +"proporciona un solo diccionario vacío para que una nueva cadena siempre " +"tenga al menos un *mapeo*." #: ../Doc/library/collections.rst:59 msgid "" "The underlying mappings are stored in a list. That list is public and can " "be accessed or updated using the *maps* attribute. There is no other state." msgstr "" +"Las asignaciones subyacentes se almacenan en una lista. Esa lista es pública " +"y se puede acceder a ella o actualizarla usando el atributo *maps*. No hay " +"otro estado." #: ../Doc/library/collections.rst:62 msgid "" @@ -151,6 +185,9 @@ msgid "" "In contrast, writes, updates, and deletions only operate on the first " "mapping." msgstr "" +"Las búsquedas buscan los mapeos subyacentes sucesivamente hasta que se " +"encuentra una clave. Por el contrario, las escrituras, actualizaciones y " +"eliminaciones solo operan en el primer *mapeo*." #: ../Doc/library/collections.rst:65 msgid "" @@ -158,6 +195,9 @@ msgid "" "if one of the underlying mappings gets updated, those changes will be " "reflected in :class:`ChainMap`." msgstr "" +"Un :class:`ChainMap` incorpora los mapeos subyacentes por referencia. " +"Entonces, si una de los mapeos subyacentes se actualiza, esos cambios se " +"reflejarán en :class:`ChainMap`." #: ../Doc/library/collections.rst:69 msgid "" @@ -165,6 +205,9 @@ msgid "" "*maps* attribute, a method for creating new subcontexts, and a property for " "accessing all but the first mapping:" msgstr "" +"Se admiten todos los métodos habituales de un diccionario. Además, hay un " +"atributo *maps*, un método para crear nuevos sub contextos y una propiedad " +"para acceder a todos menos al primer mapeo:" #: ../Doc/library/collections.rst:75 msgid "" @@ -173,6 +216,10 @@ msgid "" "which mappings are searched. The list should always contain at least one " "mapping." msgstr "" +"Una lista de mapeos actualizable por el usuario. La lista está ordenada " +"desde la primera búsqueda hasta la última búsqueda. Es el único estado " +"almacenado y se puede modificar para cambiar los mapeos que se buscan. La " +"lista siempre debe contener al menos un mapeo." #: ../Doc/library/collections.rst:82 msgid "" @@ -183,10 +230,17 @@ msgid "" "*d.maps)``. This method is used for creating subcontexts that can be " "updated without altering values in any of the parent mappings." msgstr "" +"Retorna un nuevo :class:`ChainMap` conteniendo un nuevo mapa seguido de " +"todos los mapas de la instancia actual. Si se especifica ``m``, se " +"convierte en el nuevo mapa al principio de la lista de asignaciones; si no " +"se especifica, se usa un dict vacío, de modo que una llamada a ``d." +"new_child()`` es equivalente a: ``ChainMap({}, *d.maps)``. Este método se " +"utiliza para crear sub contextos que se pueden actualizar sin alterar los " +"valores en ninguna de los mapeos padre." #: ../Doc/library/collections.rst:90 msgid "The optional ``m`` parameter was added." -msgstr "" +msgstr "Se agregó el parámetro opcional ``m`` ." #: ../Doc/library/collections.rst:95 msgid "" @@ -197,18 +251,29 @@ msgid "" "cases also parallel those for the built-in :func:`super` function. A " "reference to ``d.parents`` is equivalent to: ``ChainMap(*d.maps[1:])``." msgstr "" +"Propiedad que retorna un nuevo :class:`ChainMap` conteniendo todos los mapas " +"de la instancia actual excepto el primero. Esto es útil para omitir el " +"primer mapa en la búsqueda. Los casos de uso son similares a los de :" +"keyword:`nonlocal` la palabra clave usada en :term:`alcances anidados " +"`. Los casos de uso también son paralelos a los de la función " +"incorporada :func:`super`. Una referencia a ``d.parents`` es equivalente a: " +"``ChainMap(*d.maps[1:])``." #: ../Doc/library/collections.rst:103 msgid "" "Note, the iteration order of a :class:`ChainMap()` is determined by scanning " "the mappings last to first::" msgstr "" +"Tenga en cuenta que el orden de iteración de a :class:`ChainMap()` se " +"determina escaneando los mapeos del último al primero::" #: ../Doc/library/collections.rst:111 msgid "" "This gives the same ordering as a series of :meth:`dict.update` calls " "starting with the last mapping::" msgstr "" +"Esto da el mismo orden que una serie de llamadas a :meth:`dict.update` " +"comenzando con el último mapeo::" #: ../Doc/library/collections.rst:121 msgid "" @@ -217,6 +282,10 @@ msgid "" "`_ has options to support writing to " "any mapping in the chain." msgstr "" +"La `clase MultiContext `_ en el paquete de Enthought llamado " +"`CodeTools `_ tiene opciones para " +"admitir la escritura en cualquier mapeo de la cadena." #: ../Doc/library/collections.rst:127 msgid "" @@ -226,6 +295,11 @@ msgid "" "`~collections.ChainMap.new_child` method and the :attr:`~collections." "ChainMap.parents` property." msgstr "" +"La clase de Django `Context `_ para crear plantillas es una cadena de mapeo " +"de solo lectura. También presenta características de pushing y popping de " +"contextos similar al método :meth:`~collections.ChainMap.new_child` y a la " +"propiedad :attr:`~collections.ChainMap.parents` ." #: ../Doc/library/collections.rst:134 msgid "" @@ -233,24 +307,30 @@ msgid "" "has options to control whether writes and other mutations apply only to the " "first mapping or to any mapping in the chain." msgstr "" +"La `receta de Contextos Anidados `_ tiene opciones para controlar si las escrituras y otras " +"mutaciones se aplican solo al primer mapeo o a cualquier mapeo en la cadena." #: ../Doc/library/collections.rst:139 msgid "" "A `greatly simplified read-only version of Chainmap `_." msgstr "" +"Una `versión de solo lectura muy simplificada de Chainmap `_." #: ../Doc/library/collections.rst:144 msgid ":class:`ChainMap` Examples and Recipes" -msgstr "" +msgstr "Ejemplos y recetas :class:`ChainMap`" #: ../Doc/library/collections.rst:146 msgid "This section shows various approaches to working with chained maps." msgstr "" +"Esta sección muestra varios enfoques para trabajar con mapas encadenados." #: ../Doc/library/collections.rst:149 msgid "Example of simulating Python's internal lookup chain::" -msgstr "" +msgstr "Ejemplo de simulación de la cadena de búsqueda interna de Python:" #: ../Doc/library/collections.rst:154 msgid "" @@ -258,12 +338,17 @@ msgid "" "over environment variables which in turn take precedence over default " "values::" msgstr "" +"Ejemplo de dejar que los argumentos de la línea de comandos especificados " +"por el usuario tengan prioridad sobre las variables de entorno que, a su " +"vez, tienen prioridad sobre los valores predeterminados::" #: ../Doc/library/collections.rst:171 msgid "" "Example patterns for using the :class:`ChainMap` class to simulate nested " "contexts::" msgstr "" +"Patrones de ejemplo para usar la clase :class:`ChainMap` para simular " +"contextos anidados::" #: ../Doc/library/collections.rst:190 msgid "" @@ -272,16 +357,23 @@ msgid "" "However, if deep writes and deletions are desired, it is easy to make a " "subclass that updates keys found deeper in the chain::" msgstr "" +"La clase :class:`ChainMap` solo realiza actualizaciones (escrituras y " +"eliminaciones) en el primer mapeo de la cadena, mientras que las búsquedas " +"buscarán en la cadena completa. Sin embargo, si se desean escrituras y " +"eliminaciones profundas, es fácil crear una subclase que actualice las " +"llaves que se encuentran más profundas en la cadena::" #: ../Doc/library/collections.rst:221 msgid ":class:`Counter` objects" -msgstr "" +msgstr "Objetos :class:`Counter`" #: ../Doc/library/collections.rst:223 msgid "" "A counter tool is provided to support convenient and rapid tallies. For " "example::" msgstr "" +"Se proporciona una herramienta de contador para respaldar recuentos rápidos " +"y convenientes. Por ejemplo::" #: ../Doc/library/collections.rst:242 msgid "" @@ -291,24 +383,37 @@ msgid "" "integer value including zero or negative counts. The :class:`Counter` class " "is similar to bags or multisets in other languages." msgstr "" +"Una clase :class:`Counter` es una subclase :class:`dict` para contar objetos " +"hashables. Es una colección donde los elementos se almacenan como llaves de " +"diccionario y sus conteos se almacenan como valores de diccionario. Se " +"permite que los conteos sean cualquier valor entero, incluidos los conteos " +"de cero o negativos. La clase :class:`Counter` es similar a los *bags* o " +"multiconjuntos en otros idiomas." #: ../Doc/library/collections.rst:248 msgid "" "Elements are counted from an *iterable* or initialized from another " "*mapping* (or counter):" msgstr "" +"Los elementos se cuentan desde un *iterable* o se inicializan desde otro " +"*mapeo* (o contador):" #: ../Doc/library/collections.rst:256 msgid "" "Counter objects have a dictionary interface except that they return a zero " "count for missing items instead of raising a :exc:`KeyError`:" msgstr "" +"Los objetos Counter tienen una interfaz de diccionario, excepto que retornan " +"un conteo de cero para los elementos faltantes en lugar de levantar una :exc:" +"`KeyError`:" #: ../Doc/library/collections.rst:263 msgid "" "Setting a count to zero does not remove an element from a counter. Use " "``del`` to remove it entirely:" msgstr "" +"Establecer un conteo en cero no elimina un elemento de un contador. Utilice " +"``del`` para eliminarlo por completo:" #: ../Doc/library/collections.rst:271 msgid "" @@ -318,12 +423,19 @@ msgid "" "encountered in the left operand and then by the order encountered in the " "right operand." msgstr "" +"Como subclase de :class:`dict` , :class:`Counter` heredó la capacidad de " +"recordar el orden de inserción. Las operaciones matemáticas en objetos " +"*Counter* también preserva el orden. Los resultados se ordenan cuando se " +"encuentra un elemento por primera vez en el operando izquierdo y luego según " +"el orden encontrado en el operando derecho." #: ../Doc/library/collections.rst:277 msgid "" "Counter objects support three methods beyond those available for all " "dictionaries:" msgstr "" +"Los objetos Counter admiten tres métodos más allá de los disponibles para " +"todos los diccionarios:" #: ../Doc/library/collections.rst:282 msgid "" @@ -331,6 +443,10 @@ msgid "" "Elements are returned in the order first encountered. If an element's count " "is less than one, :meth:`elements` will ignore it." msgstr "" +"Retorna un iterador sobre los elementos que se repiten tantas veces como su " +"conteo. Los elementos se retornan en el orden en que se encontraron por " +"primera vez. Si el conteo de un elemento es menor que uno, :meth:`elements` " +"lo ignorará." #: ../Doc/library/collections.rst:292 msgid "" @@ -339,6 +455,10 @@ msgid "" "returns *all* elements in the counter. Elements with equal counts are " "ordered in the order first encountered:" msgstr "" +"Retorna una lista de los *n* elementos mas comunes y sus conteos, del mas " +"común al menos común. Si se omite *n* o ``None``, :meth:`most_common` " +"retorna *todos* los elementos del contador. Los elementos con conteos " +"iguales se ordenan en el orden en que se encontraron por primera vez:" #: ../Doc/library/collections.rst:302 msgid "" @@ -346,16 +466,22 @@ msgid "" "counter). Like :meth:`dict.update` but subtracts counts instead of " "replacing them. Both inputs and outputs may be zero or negative." msgstr "" +"Los elementos se restan de un *iterable* o de otro *mapeo* (o contador). " +"Como :meth:`dict.update` pero resta los conteos en lugar de reemplazarlos. " +"Tanto las entradas como las salidas pueden ser cero o negativas." #: ../Doc/library/collections.rst:314 msgid "" "The usual dictionary methods are available for :class:`Counter` objects " "except for two which work differently for counters." msgstr "" +"Los métodos de diccionario habituales están disponibles para objetos :class:" +"`Counter` excepto dos que funcionan de manera diferente para los contadores." #: ../Doc/library/collections.rst:319 msgid "This class method is not implemented for :class:`Counter` objects." msgstr "" +"Este método de clase no está implementado para objetos :class:`Counter` ." #: ../Doc/library/collections.rst:323 msgid "" @@ -364,10 +490,14 @@ msgid "" "them. Also, the *iterable* is expected to be a sequence of elements, not a " "sequence of ``(key, value)`` pairs." msgstr "" +"Los elementos se cuentan desde un *iterable* o agregados desde otro *mapeo* " +"(o contador). Como :meth:`dict.update` pero agrega conteos en lugar de " +"reemplazarlos. Además, se espera que el *iterable* sea una secuencia de " +"elementos, no una secuencia de parejas ``(llave, valor)`` ." #: ../Doc/library/collections.rst:328 msgid "Common patterns for working with :class:`Counter` objects::" -msgstr "" +msgstr "Patrones comunes para trabajar con objetos :class:`Counter`::" #: ../Doc/library/collections.rst:340 msgid "" @@ -379,17 +509,28 @@ msgid "" "signed counts, but the output will exclude results with counts of zero or " "less." msgstr "" +"Se proporcionan varias operaciones matemáticas para combinar objetos :class:" +"`Counter` para producir multiconjuntos (contadores que tienen conteos " +"mayores que cero). La suma y la resta combinan contadores sumando o restando " +"los conteos de los elementos correspondientes. La Intersección y unión " +"retornan el mínimo y el máximo de conteos correspondientes. Cada operación " +"puede aceptar entradas con conteos con signo, pero la salida excluirá los " +"resultados con conteos de cero o menos." #: ../Doc/library/collections.rst:358 msgid "" "Unary addition and subtraction are shortcuts for adding an empty counter or " "subtracting from an empty counter." msgstr "" +"La suma y resta unaria son atajos para agregar un contador vacío o restar de " +"un contador vacío." #: ../Doc/library/collections.rst:367 msgid "" "Added support for unary plus, unary minus, and in-place multiset operations." msgstr "" +"Se agregó soporte para operaciones unarias de adición, resta y multiconjunto " +"en su lugar (*in-place*)." #: ../Doc/library/collections.rst:372 msgid "" @@ -398,6 +539,11 @@ msgid "" "cases needing other types or negative values. To help with those use cases, " "this section documents the minimum range and type restrictions." msgstr "" +"Los Counters se diseñaron principalmente para trabajar con números enteros " +"positivos para representar conteos continuos; sin embargo, se tuvo cuidado " +"de no excluir innecesariamente los casos de uso que necesitan otros tipos o " +"valores negativos. Para ayudar con esos casos de uso, esta sección documenta " +"el rango mínimo y las restricciones de tipo." #: ../Doc/library/collections.rst:377 msgid "" @@ -405,12 +551,18 @@ msgid "" "restrictions on its keys and values. The values are intended to be numbers " "representing counts, but you *could* store anything in the value field." msgstr "" +"La clase :class:`Counter` en sí misma es una subclase de diccionario sin " +"restricciones en sus llaves y valores. Los valores están pensados para ser " +"números que representan conteos, pero *podría* almacenar cualquier cosa en " +"el campo de valor." #: ../Doc/library/collections.rst:381 msgid "" "The :meth:`~Counter.most_common` method requires only that the values be " "orderable." msgstr "" +"El método :meth:`~Counter.most_common` solo requiere que los valores se " +"puedan ordenar." #: ../Doc/library/collections.rst:383 msgid "" @@ -420,6 +572,11 @@ msgid "" "`~Counter.update` and :meth:`~Counter.subtract` which allow negative and " "zero values for both inputs and outputs." msgstr "" +"Para operaciones en su lugar (*in-place*) como ``c[key] += 1``, el tipo de " +"valor solo necesita admitir la suma y la resta. Por lo tanto, las " +"fracciones, flotantes y decimales funcionarían y se admiten valores " +"negativos. Lo mismo ocurre con :meth:`~Counter.update` y :meth:`~Counter." +"subtract` que permiten valores negativos y cero para las entradas y salidas." #: ../Doc/library/collections.rst:389 msgid "" @@ -428,29 +585,41 @@ msgid "" "are created. There are no type restrictions, but the value type needs to " "support addition, subtraction, and comparison." msgstr "" +"Los métodos de multiconjuntos están diseñados solo para casos de uso con " +"valores positivos. Las entradas pueden ser negativas o cero, pero solo se " +"crean salidas con valores positivos. No hay restricciones de tipo, pero el " +"tipo de valor debe admitir la suma, la resta y la comparación." #: ../Doc/library/collections.rst:394 msgid "" "The :meth:`~Counter.elements` method requires integer counts. It ignores " "zero and negative counts." msgstr "" +"El método :meth:`~Counter.elements` requiere conteos enteros. Ignora los " +"conteos de cero y negativos." #: ../Doc/library/collections.rst:399 msgid "" "`Bag class `_ in Smalltalk." msgstr "" +"`Clase Bag `_ en Smalltalk." #: ../Doc/library/collections.rst:402 msgid "" "Wikipedia entry for `Multisets `_." msgstr "" +"Entrada de Wikipedia para `Multiconjuntos `_." #: ../Doc/library/collections.rst:404 msgid "" "`C++ multisets `_ tutorial with examples." msgstr "" +"Tutorial de `multiconjuntos de C++ `_ con ejemplos." #: ../Doc/library/collections.rst:407 msgid "" @@ -458,16 +627,22 @@ msgid "" "Donald. The Art of Computer Programming Volume II, Section 4.6.3, Exercise " "19*." msgstr "" +"Para operaciones matemáticas en multiconjuntos y sus casos de uso, consulte " +"*Knuth, Donald. The Art of Computer Programming Volume II, Sección 4.6.3, " +"Ejercicio 19*." #: ../Doc/library/collections.rst:411 msgid "" "To enumerate all distinct multisets of a given size over a given set of " "elements, see :func:`itertools.combinations_with_replacement`::" msgstr "" +"Para enumerar todos los distintos multiconjuntos de un tamaño dado sobre un " +"conjunto dado de elementos, consulte :func:`itertools." +"combinations_with_replacement`::" #: ../Doc/library/collections.rst:418 msgid ":class:`deque` objects" -msgstr "" +msgstr "Objetos :class:`deque`" #: ../Doc/library/collections.rst:422 msgid "" @@ -475,6 +650,9 @@ msgid "" "with data from *iterable*. If *iterable* is not specified, the new deque is " "empty." msgstr "" +"Retorna un nuevo objeto deque inicializado de izquierda a derecha (usando :" +"meth:`append`) con datos de *iterable*. Si no se especifica *iterable*, el " +"nuevo deque estará vacío." #: ../Doc/library/collections.rst:425 msgid "" @@ -483,6 +661,11 @@ msgid "" "safe, memory efficient appends and pops from either side of the deque with " "approximately the same O(1) performance in either direction." msgstr "" +"Los deques son una generalización de pilas y colas (el nombre se pronuncia " +"“baraja”, *deck* en inglés, y es la abreviatura de “cola de dos extremos”, " +"*double-ended queue* en inglés). Los Deques admiten hilos seguros, appends y " +"pops eficientes en memoria desde cualquier lado del deque con " +"aproximadamente el mismo rendimiento O(1) en cualquier dirección." #: ../Doc/library/collections.rst:430 msgid "" @@ -491,6 +674,11 @@ msgid "" "``pop(0)`` and ``insert(0, v)`` operations which change both the size and " "position of the underlying data representation." msgstr "" +"Aunque los objetos :class:`list` admiten operaciones similares, están " +"optimizados para operaciones rápidas de longitud fija e incurren en costos " +"de movimiento de memoria O(n) para operaciones ``pop(0)`` y ``insert(0, v)`` " +"que cambian tanto el tamaño como la posición de la representación de datos " +"subyacente." #: ../Doc/library/collections.rst:436 msgid "" @@ -502,36 +690,46 @@ msgid "" "They are also useful for tracking transactions and other pools of data where " "only the most recent activity is of interest." msgstr "" +"Si no se especifica *maxlen* o es ``None``, los deques pueden crecer hasta " +"una longitud arbitraria. De lo contrario, el deque está limitado a la " +"longitud máxima especificada. Una vez que un deque de longitud limitada esta " +"lleno, cuando se agregan nuevos elementos, se descarta el número " +"correspondiente de elementos del extremo opuesto. Los deques de longitud " +"limitada proporcionan una funcionalidad similar al filtro ``tail`` en Unix. " +"También son útiles para rastrear transacciones y otros grupos de datos donde " +"solo la actividad más reciente es de interés." #: ../Doc/library/collections.rst:445 msgid "Deque objects support the following methods:" -msgstr "" +msgstr "Los objetos deque admiten los siguientes métodos:" #: ../Doc/library/collections.rst:449 msgid "Add *x* to the right side of the deque." -msgstr "" +msgstr "Agregue *x* al lado derecho del deque." #: ../Doc/library/collections.rst:454 msgid "Add *x* to the left side of the deque." -msgstr "" +msgstr "Agregue *x* al lado izquierdo del deque." #: ../Doc/library/collections.rst:459 msgid "Remove all elements from the deque leaving it with length 0." -msgstr "" +msgstr "Retire todos los elementos del deque dejándolo con longitud 0." #: ../Doc/library/collections.rst:464 msgid "Create a shallow copy of the deque." -msgstr "" +msgstr "Crea una copia superficial del deque." #: ../Doc/library/collections.rst:471 msgid "Count the number of deque elements equal to *x*." -msgstr "" +msgstr "Cuente el número de elementos deque igual a *x*." #: ../Doc/library/collections.rst:478 msgid "" "Extend the right side of the deque by appending elements from the iterable " "argument." msgstr "" +"Extienda el lado derecho del deque agregando elementos del argumento " +"iterable." #: ../Doc/library/collections.rst:484 msgid "" @@ -539,6 +737,9 @@ msgid "" "Note, the series of left appends results in reversing the order of elements " "in the iterable argument." msgstr "" +"Extienda el lado izquierdo del deque agregando elementos de *iterable*. " +"Tenga en cuenta que la serie de appends a la izquierda da como resultado la " +"inversión del orden de los elementos en el argumento iterable." #: ../Doc/library/collections.rst:491 msgid "" @@ -546,44 +747,59 @@ msgid "" "before index *stop*). Returns the first match or raises :exc:`ValueError` " "if not found." msgstr "" +"Retorna la posición de *x* en el deque (en o después del índice *start* y " +"antes del índice *stop*). Retorna la primera coincidencia o lanza :exc:" +"`ValueError` si no se encuentra." #: ../Doc/library/collections.rst:500 msgid "Insert *x* into the deque at position *i*." -msgstr "" +msgstr "Ingrese *x* en el dique en la posición *i*." #: ../Doc/library/collections.rst:502 msgid "" "If the insertion would cause a bounded deque to grow beyond *maxlen*, an :" "exc:`IndexError` is raised." msgstr "" +"Si la inserción causara que un deque limitado crezca más allá de *maxlen*, " +"se lanza un :exc:`IndexError`." #: ../Doc/library/collections.rst:510 msgid "" "Remove and return an element from the right side of the deque. If no " "elements are present, raises an :exc:`IndexError`." msgstr "" +"Elimina y retorna un elemento del lado derecho del deque. Si no hay " +"elementos presentes, lanza un :exc:`IndexError`." #: ../Doc/library/collections.rst:516 msgid "" "Remove and return an element from the left side of the deque. If no elements " "are present, raises an :exc:`IndexError`." msgstr "" +"Elimina y retorna un elemento del lado izquierdo del deque. Si no hay " +"elementos presentes, lanza un :exc:`IndexError`." #: ../Doc/library/collections.rst:522 msgid "" "Remove the first occurrence of *value*. If not found, raises a :exc:" "`ValueError`." msgstr "" +"Elimina la primera aparición de *value*. Si no se encuentra, lanza un :exc:" +"`ValueError`." #: ../Doc/library/collections.rst:528 msgid "Reverse the elements of the deque in-place and then return ``None``." msgstr "" +"Invierte los elementos del deque en su lugar (*in-place*) y luego retorna " +"``None``." #: ../Doc/library/collections.rst:535 msgid "" "Rotate the deque *n* steps to the right. If *n* is negative, rotate to the " "left." msgstr "" +"Gira el deque *n* pasos a la derecha. Si *n* es negativo, lo gira hacia la " +"izquierda." #: ../Doc/library/collections.rst:538 msgid "" @@ -591,14 +807,17 @@ msgid "" "``d.appendleft(d.pop())``, and rotating one step to the left is equivalent " "to ``d.append(d.popleft())``." msgstr "" +"Cuando el deque no está vacío, girar un paso hacia la derecha equivale a ``d." +"appendleft(d.pop())``, y girar un paso hacia la izquierda equivale a ``d." +"append(d.popleft())``." #: ../Doc/library/collections.rst:543 msgid "Deque objects also provide one read-only attribute:" -msgstr "" +msgstr "Los objetos deque también proporcionan un atributo de solo lectura:" #: ../Doc/library/collections.rst:547 msgid "Maximum size of a deque or ``None`` if unbounded." -msgstr "" +msgstr "Tamaño máximo de un deque o ``None`` si no está limitado." #: ../Doc/library/collections.rst:552 msgid "" @@ -608,36 +827,49 @@ msgid "" "to access the first element. Indexed access is O(1) at both ends but slows " "to O(n) in the middle. For fast random access, use lists instead." msgstr "" +"Además de lo anterior, los deques admiten iteración, pickling, ``len(d)``, " +"``reversed(d)``, ``copy.copy(d)``, ``copy.deepcopy(d)``, prueba de " +"pertenencia con el operador :keyword:`in` , y referencias de subíndices como " +"``d[0]`` para acceder al primer elemento. El acceso indexado es O(1) en " +"ambos extremos, pero se ralentiza hasta O(n) en el medio. Para un acceso " +"aleatorio rápido, use listas en su lugar." #: ../Doc/library/collections.rst:558 msgid "" "Starting in version 3.5, deques support ``__add__()``, ``__mul__()``, and " "``__imul__()``." msgstr "" +"A partir de la versión 3.5, los deques admiten ``__add__()``, ``__mul__()``, " +"y ``__imul__()``." #: ../Doc/library/collections.rst:561 msgid "Example:" -msgstr "" +msgstr "Ejemplo:" #: ../Doc/library/collections.rst:618 msgid ":class:`deque` Recipes" -msgstr "" +msgstr "Recetas :class:`deque`" #: ../Doc/library/collections.rst:620 msgid "This section shows various approaches to working with deques." -msgstr "" +msgstr "Esta sección muestra varios enfoques para trabajar con deques." #: ../Doc/library/collections.rst:622 msgid "" "Bounded length deques provide functionality similar to the ``tail`` filter " "in Unix::" msgstr "" +"Los deques de longitud limitada proporcionan una funcionalidad similar al " +"filtro ``tail`` en Unix::" #: ../Doc/library/collections.rst:630 msgid "" "Another approach to using deques is to maintain a sequence of recently added " "elements by appending to the right and popping to the left::" msgstr "" +"Otro enfoque para usar deques es mantener una secuencia de elementos " +"agregados recientemente haciendo appending a la derecha y popping a la " +"izquierda:" #: ../Doc/library/collections.rst:645 msgid "" @@ -648,6 +880,12 @@ msgid "" "popleft`; otherwise, it can be cycled back to the end with the :meth:`~deque." "rotate` method::" msgstr "" +"Un `scheduler round-robin `_ se puede implementar con iteradores de entrada " +"almacenados en :class:`deque`. Los valores son producidos del iterador " +"activo en la posición cero. Si ese iterador está agotado, se puede eliminar " +"con :meth:`~deque.popleft`; de lo contrario, se puede volver en ciclos al " +"final con el método :meth:`~deque.rotate` ::" #: ../Doc/library/collections.rst:664 msgid "" @@ -655,6 +893,10 @@ msgid "" "slicing and deletion. For example, a pure Python implementation of ``del " "d[n]`` relies on the ``rotate()`` method to position elements to be popped::" msgstr "" +"El método :meth:`~deque.rotate` proporciona una forma de implementar " +"eliminación y rebanado de :class:`deque`. Por ejemplo, una implementación " +"pura de Python de ``del d[n]`` se basa en el método ``rotate()`` para " +"colocar los elementos que se van a extraer::" #: ../Doc/library/collections.rst:673 msgid "" @@ -665,10 +907,17 @@ msgid "" "that approach, it is easy to implement Forth style stack manipulations such " "as ``dup``, ``drop``, ``swap``, ``over``, ``pick``, ``rot``, and ``roll``." msgstr "" +"Para implementar el rebanado de un :class:`deque`, use un enfoque similar " +"aplicando :meth:`~deque.rotate` para traer un elemento objetivo al lado " +"izquierdo del deque. Elimine las entradas antiguas con :meth:`~deque." +"popleft`, agregue nuevas entradas con :meth:`~deque.extend`, y luego " +"invierta la rotación. Con variaciones menores en ese enfoque, es fácil " +"implementar manipulaciones de pila de estilo hacia adelante como ``dup``, " +"``drop``, ``swap``, ``over``, ``pick``, ``rot``, y ``roll``." #: ../Doc/library/collections.rst:683 msgid ":class:`defaultdict` objects" -msgstr "" +msgstr "Objetos :class:`defaultdict`" #: ../Doc/library/collections.rst:687 msgid "" @@ -677,6 +926,10 @@ msgid "" "writable instance variable. The remaining functionality is the same as for " "the :class:`dict` class and is not documented here." msgstr "" +"Retorna un nuevo objeto similar a un diccionario. :class:`defaultdict` es " +"una subclase de la clase incorporada :class:`dict`. Anula un método y agrega " +"una variable de instancia de escritura. La funcionalidad restante es la " +"misma que para la clase :class:`dict` y no está documentada aquí." #: ../Doc/library/collections.rst:692 msgid "" @@ -685,18 +938,26 @@ msgid "" "arguments are treated the same as if they were passed to the :class:`dict` " "constructor, including keyword arguments." msgstr "" +"El primer argumento proporciona el valor inicial para el atributo :attr:" +"`default_factory`; por defecto es ``None``. Todos los argumentos restantes " +"se tratan de la misma forma que si se pasaran al constructor :class:`dict`, " +"incluidos los argumentos de palabras clave." #: ../Doc/library/collections.rst:698 msgid "" ":class:`defaultdict` objects support the following method in addition to the " "standard :class:`dict` operations:" msgstr "" +"Los objetos :class:`defaultdict` admiten el siguiente método además de las " +"operaciones estándar de :class:`dict`:" #: ../Doc/library/collections.rst:703 msgid "" "If the :attr:`default_factory` attribute is ``None``, this raises a :exc:" "`KeyError` exception with the *key* as argument." msgstr "" +"Si el atributo :attr:`default_factory` es ``None``, lanza una excepción :exc:" +"`KeyError` con la *llave* como argumento." #: ../Doc/library/collections.rst:706 msgid "" @@ -704,12 +965,17 @@ msgid "" "to provide a default value for the given *key*, this value is inserted in " "the dictionary for the *key*, and returned." msgstr "" +"Si :attr:`default_factory` no es ``None``, se llama sin argumentos para " +"proporcionar un valor predeterminado para la *llave* dada, este valor se " +"inserta en el diccionario para la *llave* y se retorna." #: ../Doc/library/collections.rst:710 msgid "" "If calling :attr:`default_factory` raises an exception this exception is " "propagated unchanged." msgstr "" +"Si llamar a :attr:`default_factory` lanza una excepción, esta excepción se " +"propaga sin cambios." #: ../Doc/library/collections.rst:713 msgid "" @@ -717,6 +983,9 @@ msgid "" "class when the requested key is not found; whatever it returns or raises is " "then returned or raised by :meth:`__getitem__`." msgstr "" +"Este método es llamado por el método :meth:`__getitem__` de la clase :class:" +"`dict` cuando no se encuentra la llave solicitada; todo lo que retorna o " +"lanza es retornado o lanzado por :meth:`__getitem__`." #: ../Doc/library/collections.rst:717 msgid "" @@ -725,10 +994,15 @@ msgid "" "dictionaries, return ``None`` as a default rather than using :attr:" "`default_factory`." msgstr "" +"Tenga en cuenta que :meth:`__missing__` *no* se llama para ninguna operación " +"aparte de :meth:`__getitem__`. Esto significa que :meth:`get`, como los " +"diccionarios normales, retornará ``None`` por defecto en lugar de usar :attr:" +"`default_factory`." #: ../Doc/library/collections.rst:723 msgid ":class:`defaultdict` objects support the following instance variable:" msgstr "" +"los objetos :class:`defaultdict` admiten la siguiente variable de instancia:" #: ../Doc/library/collections.rst:728 msgid "" @@ -736,16 +1010,21 @@ msgid "" "from the first argument to the constructor, if present, or to ``None``, if " "absent." msgstr "" +"Este atributo es utilizado por el método :meth:`__missing__` ; se inicializa " +"desde el primer argumento al constructor, si está presente, o en ``None``, " +"si está ausente." #: ../Doc/library/collections.rst:734 msgid ":class:`defaultdict` Examples" -msgstr "" +msgstr "Ejemplos :class:`defaultdict`" #: ../Doc/library/collections.rst:736 msgid "" "Using :class:`list` as the :attr:`~defaultdict.default_factory`, it is easy " "to group a sequence of key-value pairs into a dictionary of lists:" msgstr "" +"Usando :class:`list` como :attr:`~defaultdict.default_factory`, es fácil " +"agrupar una secuencia de pares llave-valor en un diccionario de listas:" #: ../Doc/library/collections.rst:747 msgid "" @@ -758,6 +1037,14 @@ msgid "" "list. This technique is simpler and faster than an equivalent technique " "using :meth:`dict.setdefault`:" msgstr "" +"Cuando se encuentra cada llave por primera vez, no está ya en el mapping; " +"por lo que una entrada se crea automáticamente usando la función :attr:" +"`~defaultdict.default_factory` que retorna una :class:`list` vacía. La " +"operación :meth:`list.append` luego adjunta el valor a la nueva lista. " +"Cuando se vuelven a encontrar llaves, la búsqueda procede normalmente " +"(retornando la lista para esa llave) y la operación :meth:`list.append` " +"agrega otro valor a la lista. Esta técnica es más simple y rápida que una " +"técnica equivalente usando :meth:`dict.setdefault`:" #: ../Doc/library/collections.rst:762 msgid "" @@ -765,6 +1052,9 @@ msgid "" "class:`defaultdict` useful for counting (like a bag or multiset in other " "languages):" msgstr "" +"Establecer :attr:`~defaultdict.default_factory` en :class:`int` hace que :" +"class:`defaultdict` sea útil para contar (como un bag o multiconjunto en " +"otros idiomas):" #: ../Doc/library/collections.rst:774 msgid "" @@ -773,6 +1063,10 @@ msgid "" "default count of zero. The increment operation then builds up the count for " "each letter." msgstr "" +"Cuando se encuentra una letra por primera vez, falta en el mapping, por lo " +"que la función :attr:`~defaultdict.default_factory` llama a :func:`int` para " +"proporcionar una cuenta predeterminada de cero. La operación de incremento " +"luego acumula el conteo de cada letra." #: ../Doc/library/collections.rst:778 msgid "" @@ -781,16 +1075,23 @@ msgid "" "functions is to use a lambda function which can supply any constant value " "(not just zero):" msgstr "" +"La función :func:`int` que siempre retorna cero es solo un caso especial de " +"funciones constantes. Una forma más rápida y flexible de crear funciones " +"constantes es utilizar una función lambda que pueda proporcionar cualquier " +"valor constante (no solo cero):" #: ../Doc/library/collections.rst:790 msgid "" "Setting the :attr:`~defaultdict.default_factory` to :class:`set` makes the :" "class:`defaultdict` useful for building a dictionary of sets:" msgstr "" +"Establecer :attr:`~defaultdict.default_factory` en :class:`set` hace que :" +"class:`defaultdict` sea útil para construir un diccionario de conjuntos:" #: ../Doc/library/collections.rst:803 msgid ":func:`namedtuple` Factory Function for Tuples with Named Fields" msgstr "" +":func:`namedtuple` Funciones *Factory* para Tuplas y Campos con Nombres" #: ../Doc/library/collections.rst:805 msgid "" @@ -799,6 +1100,10 @@ msgid "" "are used, and they add the ability to access fields by name instead of " "position index." msgstr "" +"Las tuplas con nombre asignan significado a cada posición en una tupla y " +"permiten un código más legible y autodocumentado. Se pueden usar donde se " +"usen tuplas regulares y agregan la capacidad de acceder a los campos por " +"nombre en lugar del índice de posición." #: ../Doc/library/collections.rst:811 msgid "" @@ -808,6 +1113,12 @@ msgid "" "helpful docstring (with typename and field_names) and a helpful :meth:" "`__repr__` method which lists the tuple contents in a ``name=value`` format." msgstr "" +"Retorna una nueva subclase de tupla llamada *typename*. La nueva subclase se " +"utiliza para crear objetos tipo tupla que tienen campos accesibles mediante " +"búsqueda de atributos, además de ser indexables e iterables. Las instancias " +"de la subclase también tienen un docstring útil (con typename y field_names) " +"y un método útil :meth:`__repr__` que lista el contenido de la tupla en un " +"formato de ``nombre=valor``." #: ../Doc/library/collections.rst:817 msgid "" @@ -815,6 +1126,10 @@ msgid "" "Alternatively, *field_names* can be a single string with each fieldname " "separated by whitespace and/or commas, for example ``'x y'`` or ``'x, y'``." msgstr "" +"Los *nombres de campo* son una secuencia de cadenas como ``[‘x’, ‘y’]``. " +"Alternativamente, *nombres de campo* puede ser una sola cadena con cada " +"nombre de campo separado por espacios en blanco y/o comas, por ejemplo ``’x " +"y’`` or ``’x, y’``." #: ../Doc/library/collections.rst:821 msgid "" @@ -823,6 +1138,11 @@ msgid "" "and underscores but do not start with a digit or underscore and cannot be a :" "mod:`keyword` such as *class*, *for*, *return*, *global*, *pass*, or *raise*." msgstr "" +"Se puede usar cualquier identificador de Python válido para un *fieldname*, " +"excepto para los nombres que comienzan con un guión bajo. Los " +"identificadores válidos constan de letras, dígitos y guiones bajos, pero no " +"comienzan con un dígito o guion bajo y no pueden ser :mod:`keyword` como " +"*class*, *for*, *return*, *global*, *pass*, o *raise*." #: ../Doc/library/collections.rst:827 msgid "" @@ -831,6 +1151,10 @@ msgid "" "converted to ``['abc', '_1', 'ghi', '_3']``, eliminating the keyword ``def`` " "and the duplicate fieldname ``abc``." msgstr "" +"Si *rename* es verdadero, los nombres de campo no válidos se reemplazan " +"automáticamente con nombres posicionales. Por ejemplo, ``[‘abc’, ‘def’, " +"‘ghi’, ‘abc’]`` se convierte en ``[‘abc’, ‘_1’, ‘ghi’, ‘_3’]``, eliminando " +"la palabra clave ``def`` y el nombre de campo duplicado ``abc``." #: ../Doc/library/collections.rst:832 msgid "" @@ -841,47 +1165,64 @@ msgid "" "``x`` will be a required argument, ``y`` will default to ``1``, and ``z`` " "will default to ``2``." msgstr "" +"*defaults* pueden ser ``None`` o un :term:`iterable` de los valores " +"predeterminados. Dado que los campos con un valor predeterminado deben venir " +"después de cualquier campo sin un valor predeterminado, los *defaults* se " +"aplican a los parámetros situados más a la derecha. Por ejemplo, si los " +"nombres de campo son ``[‘x’, ‘y’, ‘z’]``y los valores predeterminados son " +"``(1, 2)``, entonces ``x`` será un argumento obligatorio, ``y`` tendrá el " +"valor predeterminado de ``1``, y ``z`` el valor predeterminado de ``2``." #: ../Doc/library/collections.rst:839 msgid "" "If *module* is defined, the ``__module__`` attribute of the named tuple is " "set to that value." msgstr "" +"Si se define *module*, el atributo ``__module__`` de la tupla nombrada se " +"establece en ese valor." #: ../Doc/library/collections.rst:842 msgid "" "Named tuple instances do not have per-instance dictionaries, so they are " "lightweight and require no more memory than regular tuples." msgstr "" +"Las instancias de tuplas con nombre no tienen diccionarios por instancia, " +"por lo que son livianas y no requieren más memoria que las tuplas normales." #: ../Doc/library/collections.rst:845 msgid "Added support for *rename*." -msgstr "" +msgstr "Se agregó soporte para *rename*." #: ../Doc/library/collections.rst:848 msgid "" "The *verbose* and *rename* parameters became :ref:`keyword-only arguments " "`." msgstr "" +"Los parámetros *verbose* y *rename* se convirtieron en :ref:`argumentos de " +"solo palabra clave `." #: ../Doc/library/collections.rst:852 msgid "Added the *module* parameter." -msgstr "" +msgstr "Se agregó el parámetro *module*." #: ../Doc/library/collections.rst:855 msgid "Removed the *verbose* parameter and the :attr:`_source` attribute." -msgstr "" +msgstr "Se eliminaron el parámetro *verbose* y el atributo :attr:`_source`." #: ../Doc/library/collections.rst:858 msgid "" "Added the *defaults* parameter and the :attr:`_field_defaults` attribute." msgstr "" +"Se agregaron el parámetro *defaults* y él atributo :attr:`_field_defaults`." #: ../Doc/library/collections.rst:878 msgid "" "Named tuples are especially useful for assigning field names to result " "tuples returned by the :mod:`csv` or :mod:`sqlite3` modules::" msgstr "" +"Las tuplas con nombre son especialmente útiles para asignar nombres de campo " +"a las tuplas de resultado retornadas por los módulos :mod:`csv` o :mod:" +"`sqlite3`::" #: ../Doc/library/collections.rst:894 msgid "" @@ -889,21 +1230,29 @@ msgid "" "additional methods and two attributes. To prevent conflicts with field " "names, the method and attribute names start with an underscore." msgstr "" +"Además de los métodos heredados de las tuplas, las tuplas con nombre admiten " +"tres métodos adicionales y dos atributos. Para evitar conflictos con los " +"nombres de campo, los nombres de método y atributo comienzan con un guión " +"bajo." #: ../Doc/library/collections.rst:900 msgid "" "Class method that makes a new instance from an existing sequence or iterable." msgstr "" +"Método de clase que crea una nueva instancia a partir de una secuencia " +"existente o iterable." #: ../Doc/library/collections.rst:910 msgid "" "Return a new :class:`dict` which maps field names to their corresponding " "values:" msgstr "" +"Retorna un nuevo :class:`dict` que asigna los nombres de los campos a sus " +"valores correspondientes:" #: ../Doc/library/collections.rst:919 msgid "Returns an :class:`OrderedDict` instead of a regular :class:`dict`." -msgstr "" +msgstr "Retorna un :class:`OrderedDict` en lugar de un :class:`dict` regular." #: ../Doc/library/collections.rst:922 msgid "" @@ -912,34 +1261,48 @@ msgid "" "features of :class:`OrderedDict` are required, the suggested remediation is " "to cast the result to the desired type: ``OrderedDict(nt._asdict())``." msgstr "" +"Retorna un :class:`dict` normal en lugar de un :class:`OrderedDict`. A " +"partir de Python 3.7, se garantiza el orden de los diccionarios normales. Si " +"se requieren las características adicionales de :class:`OrderedDict` , la " +"corrección sugerida es emitir el resultado al tipo deseado: ``OrderedDict(nt." +"_asdict())``." #: ../Doc/library/collections.rst:931 msgid "" "Return a new instance of the named tuple replacing specified fields with new " "values::" msgstr "" +"Retorna una nueva instancia de la tupla nombrada reemplazando los campos " +"especificados con nuevos valores::" #: ../Doc/library/collections.rst:943 msgid "" "Tuple of strings listing the field names. Useful for introspection and for " "creating new named tuple types from existing named tuples." msgstr "" +"Tupla de cadenas que lista los nombres de los campos. Útil para la " +"introspección y para crear nuevos tipos de tuplas con nombre a partir de " +"tuplas con nombre existentes." #: ../Doc/library/collections.rst:958 msgid "Dictionary mapping field names to default values." -msgstr "" +msgstr "Diccionario de nombres de campos mapeados a valores predeterminados." #: ../Doc/library/collections.rst:968 msgid "" "To retrieve a field whose name is stored in a string, use the :func:" "`getattr` function:" msgstr "" +"Para recuperar un campo cuyo nombre está almacenado en una cadena, use la " +"función :func:`getattr`:" #: ../Doc/library/collections.rst:974 msgid "" "To convert a dictionary to a named tuple, use the double-star-operator (as " "described in :ref:`tut-unpacking-arguments`):" msgstr "" +"Para convertir un diccionario en una tupla con nombre, use el operador de " +"doble estrella (como se describe en :ref:`tut-unpacking-arguments`):" #: ../Doc/library/collections.rst:981 msgid "" @@ -947,6 +1310,9 @@ msgid "" "functionality with a subclass. Here is how to add a calculated field and a " "fixed-width print format:" msgstr "" +"Dado que una tupla con nombre es una clase Python normal, es fácil agregar o " +"cambiar la funcionalidad con una subclase. A continuación, se explica cómo " +"agregar un campo calculado y un formato de impresión de ancho fijo:" #: ../Doc/library/collections.rst:1000 msgid "" @@ -954,6 +1320,9 @@ msgid "" "keep memory requirements low by preventing the creation of instance " "dictionaries." msgstr "" +"La subclase que se muestra arriba establece ``__slots__`` a una tupla vacía. " +"Esto ayuda a mantener bajos los requisitos de memoria al evitar la creación " +"de diccionarios de instancia." #: ../Doc/library/collections.rst:1003 msgid "" @@ -961,16 +1330,21 @@ msgid "" "create a new named tuple type from the :attr:`~somenamedtuple._fields` " "attribute:" msgstr "" +"La subclasificación no es útil para agregar campos nuevos almacenados. En su " +"lugar, simplemente cree un nuevo tipo de tupla con nombre a partir del " +"atributo :attr:`~somenamedtuple._fields`:" #: ../Doc/library/collections.rst:1008 msgid "" "Docstrings can be customized by making direct assignments to the ``__doc__`` " "fields:" msgstr "" +"Los docstrings se pueden personalizar realizando asignaciones directas a los " +"campos ``__doc__`` :" #: ../Doc/library/collections.rst:1017 msgid "Property docstrings became writeable." -msgstr "" +msgstr "Los docstrings de propiedad se pueden escribir." #: ../Doc/library/collections.rst:1022 msgid "" @@ -978,22 +1352,30 @@ msgid "" "tuples. It also provides an elegant notation using the :keyword:`class` " "keyword::" msgstr "" +"Consulte :class:`typing.NamedTuple` para ver una forma de agregar " +"sugerencias de tipo para tuplas con nombre. También proporciona una notación " +"elegante usando la palabra clave :keyword:`class`::" #: ../Doc/library/collections.rst:1031 msgid "" "See :meth:`types.SimpleNamespace` for a mutable namespace based on an " "underlying dictionary instead of a tuple." msgstr "" +"Vea :meth:`types.SimpleNamespace` para un espacio de nombres mutable basado " +"en un diccionario subyacente en lugar de una tupla." #: ../Doc/library/collections.rst:1034 msgid "" "The :mod:`dataclasses` module provides a decorator and functions for " "automatically adding generated special methods to user-defined classes." msgstr "" +"El módulo :mod:`dataclasses` proporciona un decorador y funciones para " +"agregar automáticamente métodos especiales generados a clases definidas por " +"el usuario." #: ../Doc/library/collections.rst:1039 msgid ":class:`OrderedDict` objects" -msgstr "" +msgstr "Objetos :class:`OrderedDict`" #: ../Doc/library/collections.rst:1041 msgid "" @@ -1002,16 +1384,23 @@ msgid "" "important now that the built-in :class:`dict` class gained the ability to " "remember insertion order (this new behavior became guaranteed in Python 3.7)." msgstr "" +"Los diccionarios ordenados son como los diccionarios normales, pero tienen " +"algunas capacidades adicionales relacionadas con las operaciones de " +"ordenado. Se han vuelto menos importantes ahora que la clase incorporada :" +"class:`dict` ganó la capacidad de recordar el orden de inserción (este nuevo " +"comportamiento quedó garantizado en Python 3.7)." #: ../Doc/library/collections.rst:1047 msgid "Some differences from :class:`dict` still remain:" -msgstr "" +msgstr "Aún quedan algunas diferencias con :class:`dict` :" #: ../Doc/library/collections.rst:1049 msgid "" "The regular :class:`dict` was designed to be very good at mapping " "operations. Tracking insertion order was secondary." msgstr "" +"El :class:`dict` normal fue diseñado para ser muy bueno en operaciones de " +"mapeo. El seguimiento del pedido de inserción era secundario." #: ../Doc/library/collections.rst:1052 msgid "" @@ -1019,6 +1408,9 @@ msgid "" "Space efficiency, iteration speed, and the performance of update operations " "were secondary." msgstr "" +"La :class:`OrderedDict` fue diseñada para ser buena para reordenar " +"operaciones. La eficiencia del espacio, la velocidad de iteración y el " +"rendimiento de las operaciones de actualización fueron secundarios." #: ../Doc/library/collections.rst:1056 msgid "" @@ -1027,33 +1419,46 @@ msgid "" "recent accesses (for example in an `LRU cache `_)." msgstr "" +"Algorítmicamente, :class:`OrderedDict` puede manejar operaciones frecuentes " +"de reordenamiento mejor que :class:`dict`. Esto lo hace adecuado para " +"rastrear accesos recientes (por ejemplo, en un `cache LRU `_)." #: ../Doc/library/collections.rst:1061 msgid "" "The equality operation for :class:`OrderedDict` checks for matching order." msgstr "" +"La operación de igualdad para :class:`OrderedDict` comprueba el orden " +"coincidente." #: ../Doc/library/collections.rst:1063 msgid "" "The :meth:`popitem` method of :class:`OrderedDict` has a different " "signature. It accepts an optional argument to specify which item is popped." msgstr "" +"El método :meth:`popitem` de :class:`OrderedDict` tiene una firma diferente. " +"Acepta un argumento opcional para especificar qué elemento es *popped*." #: ../Doc/library/collections.rst:1066 msgid "" ":class:`OrderedDict` has a :meth:`move_to_end` method to efficiently " "reposition an element to an endpoint." msgstr "" +":class:`OrderedDict` tiene un método :meth:`move_to_end` para reposiciones " +"eficientemente un elemento a un punto final." #: ../Doc/library/collections.rst:1069 msgid "Until Python 3.8, :class:`dict` lacked a :meth:`__reversed__` method." msgstr "" +"Hasta Python 3.8, :class:`dict` carecía de un método :meth:`__reversed__`." #: ../Doc/library/collections.rst:1074 msgid "" "Return an instance of a :class:`dict` subclass that has methods specialized " "for rearranging dictionary order." msgstr "" +"Retorna una instancia de una subclase :class:`dict` que tiene métodos " +"especializados para reorganizar el orden del diccionario." #: ../Doc/library/collections.rst:1081 msgid "" @@ -1062,6 +1467,10 @@ msgid "" "out)` order if *last* is true or :abbr:`FIFO (first-in, first-out)` order if " "false." msgstr "" +"El método :meth:`popitem` para diccionarios ordenados retorna y elimina un " +"par (llave, valor). Los pares se retornan en orden :abbr:`LIFO (last-in, " +"first-out)` si el *último* es verdadero o en orden :abbr:`FIFO (first-in, " +"first-out)` si es falso." #: ../Doc/library/collections.rst:1088 msgid "" @@ -1069,12 +1478,18 @@ msgid "" "moved to the right end if *last* is true (the default) or to the beginning " "if *last* is false. Raises :exc:`KeyError` if the *key* does not exist::" msgstr "" +"Mueva una *llave* existente a cualquier extremo de un diccionario ordenado. " +"El elemento se mueve al final de la derecha si el *último* es verdadero (el " +"valor predeterminado) o al principio si el *último* es falso. Lanza :exc:" +"`KeyError` si la *llave* no existe::" #: ../Doc/library/collections.rst:1103 msgid "" "In addition to the usual mapping methods, ordered dictionaries also support " "reverse iteration using :func:`reversed`." msgstr "" +"Además de los métodos de mapeo habituales, los diccionarios ordenados " +"también admiten la iteración inversa usando :func:`reversed`." #: ../Doc/library/collections.rst:1106 msgid "" @@ -1085,22 +1500,33 @@ msgid "" "allows :class:`OrderedDict` objects to be substituted anywhere a regular " "dictionary is used." msgstr "" +"Las pruebas de igualdad entre los objetos :class:`OrderedDict` son sensibles " +"al orden y se implementan como ``list(od1.items())==list(od2.items())``. Las " +"pruebas de igualdad entre los objetos :class:`OrderedDict` y otros objetos :" +"class:`~collections.abc.Mapping` son insensibles al orden como los " +"diccionarios normales. Esto permite que los objetos :class:`OrderedDict` " +"sean sustituidos en cualquier lugar donde se utilice un diccionario normal." #: ../Doc/library/collections.rst:1113 msgid "" "The items, keys, and values :term:`views ` of :class:" "`OrderedDict` now support reverse iteration using :func:`reversed`." msgstr "" +"Los elementos, llaves y valores :term:`vistas ` de :class:" +"`OrderedDict` ahora admiten la iteración inversa usando :func:`reversed`." #: ../Doc/library/collections.rst:1117 msgid "" "With the acceptance of :pep:`468`, order is retained for keyword arguments " "passed to the :class:`OrderedDict` constructor and its :meth:`update` method." msgstr "" +"Con la aceptación de :pep:`468`, el orden se mantiene para los argumentos de " +"palabras clave pasados al constructor :class:`OrderedDict` y su método :meth:" +"`update`." #: ../Doc/library/collections.rst:1123 msgid ":class:`OrderedDict` Examples and Recipes" -msgstr "" +msgstr "Ejemplos y Recetas :class:`OrderedDict`" #: ../Doc/library/collections.rst:1125 msgid "" @@ -1109,16 +1535,22 @@ msgid "" "existing entry, the original insertion position is changed and moved to the " "end::" msgstr "" +"Es sencillo crear una variante de diccionario ordenado que recuerde el orden " +"en que las llaves se insertaron por *última vez*. Si una nueva entrada " +"sobrescribe una entrada existente, la posición de inserción original se " +"cambia y se mueve al final::" #: ../Doc/library/collections.rst:1137 msgid "" "An :class:`OrderedDict` would also be useful for implementing variants of :" "func:`functools.lru_cache`::" msgstr "" +"U :class:`OrderedDict` también sería útil para implementar variantes de :" +"func:`functools.lru_cache`::" #: ../Doc/library/collections.rst:1160 msgid ":class:`UserDict` objects" -msgstr "" +msgstr "Objetos :class:`UserDict`" #: ../Doc/library/collections.rst:1162 msgid "" @@ -1127,6 +1559,11 @@ msgid "" "subclass directly from :class:`dict`; however, this class can be easier to " "work with because the underlying dictionary is accessible as an attribute." msgstr "" +"La clase, :class:`UserDict` actúa como un contenedor alrededor de los " +"objetos del diccionario. La necesidad de esta clase ha sido parcialmente " +"suplantada por la capacidad de crear subclases directamente desde :class:" +"`dict`; sin embargo, es más fácil trabajar con esta clase porque se puede " +"acceder al diccionario subyacente como un atributo." #: ../Doc/library/collections.rst:1170 msgid "" @@ -1136,21 +1573,31 @@ msgid "" "initialized with its contents; note that a reference to *initialdata* will " "not be kept, allowing it be used for other purposes." msgstr "" +"Clase que simula un diccionario. El contenido de la instancia se guarda en " +"un diccionario normal, al que se puede acceder mediante el atributo :attr:" +"`data` de las instancias :class:`UserDict`. Si se proporciona " +"*initialdata*, :attr:`data` se inicializa con su contenido; tenga en cuenta " +"que no se mantendrá una referencia a *initialdata*, lo que permite que se " +"utilice para otros fines." #: ../Doc/library/collections.rst:1176 msgid "" "In addition to supporting the methods and operations of mappings, :class:" "`UserDict` instances provide the following attribute:" msgstr "" +"Además de admitir los métodos y operaciones de los mappings, las instancias :" +"class:`UserDict` proporcionan el siguiente atributo:" #: ../Doc/library/collections.rst:1181 msgid "" "A real dictionary used to store the contents of the :class:`UserDict` class." msgstr "" +"Un diccionario real utilizado para almacenar el contenido de la clase :class:" +"`UserDict` ." #: ../Doc/library/collections.rst:1187 msgid ":class:`UserList` objects" -msgstr "" +msgstr "Objetos :class:`UserList`" #: ../Doc/library/collections.rst:1189 msgid "" @@ -1159,6 +1606,10 @@ msgid "" "existing methods or add new ones. In this way, one can add new behaviors to " "lists." msgstr "" +"Esta clase actúa como un contenedor alrededor de los objetos de lista. Es " +"una clase base útil para tus propias clases tipo lista que pueden heredar de " +"ellas y anular métodos existentes o agregar nuevos. De esta forma, se pueden " +"agregar nuevos comportamientos a las listas." #: ../Doc/library/collections.rst:1194 msgid "" @@ -1166,6 +1617,10 @@ msgid "" "subclass directly from :class:`list`; however, this class can be easier to " "work with because the underlying list is accessible as an attribute." msgstr "" +"La necesidad de esta clase ha sido parcialmente suplantada por la capacidad " +"de crear subclases directamente desde :class:`list`; sin embargo, es más " +"fácil trabajar con esta clase porque se puede acceder a la lista subyacente " +"como atributo." #: ../Doc/library/collections.rst:1200 msgid "" @@ -1175,20 +1630,31 @@ msgid "" "of *list*, defaulting to the empty list ``[]``. *list* can be any iterable, " "for example a real Python list or a :class:`UserList` object." msgstr "" +"Clase que simula una lista. El contenido de la instancia se mantiene en una " +"lista normal, a la que se puede acceder mediante el atributo :attr:`data` de " +"las instancias :class:`UserList`. El contenido de la instancia se establece " +"inicialmente en una copia de *list*, por defecto a la lista vacía ``[]``. " +"*list* puede ser cualquier iterable, por ejemplo, una lista de Python real o " +"un objeto :class:`UserList`." #: ../Doc/library/collections.rst:1206 msgid "" "In addition to supporting the methods and operations of mutable sequences, :" "class:`UserList` instances provide the following attribute:" msgstr "" +"Además de admitir los métodos y operaciones de secuencias mutables, las " +"instancias :class:`UserList` proporcionan el siguiente atributo:" #: ../Doc/library/collections.rst:1211 msgid "" "A real :class:`list` object used to store the contents of the :class:" "`UserList` class." msgstr "" +"Un objeto real :class:`list` usado para almacenar el contenido de la clase :" +"class:`UserList` ." #: ../Doc/library/collections.rst:1214 +#, fuzzy msgid "" "**Subclassing requirements:** Subclasses of :class:`UserList` are expected " "to offer a constructor which can be called with either no arguments or one " @@ -1197,6 +1663,12 @@ msgid "" "constructor can be called with a single parameter, which is a sequence " "object used as a data source." msgstr "" +"**Requisitos de subclases:** Se espera que las subclases de :class:" +"`UserList` ofrezcan un constructor al que se pueda llamar sin argumentos o " +"con un solo argumento. Las operaciones de lista que retornan una nueva " +"secuencia intentan crear una instancia de la clase de implementación real. " +"Para hacerlo, asume que se puede llamar al constructor con un solo " +"parámetro, que es un objeto de secuencia utilizado como fuente de datos." #: ../Doc/library/collections.rst:1221 msgid "" @@ -1205,10 +1677,14 @@ msgid "" "consult the sources for information about the methods which need to be " "provided in that case." msgstr "" +"Si una clase derivada no desea cumplir con este requisito, todos los métodos " +"especiales admitidos por esta clase deberán de anularse; consulte las " +"fuentes para obtener información sobre los métodos que deben proporcionarse " +"en ese caso." #: ../Doc/library/collections.rst:1227 msgid ":class:`UserString` objects" -msgstr "" +msgstr "Objetos :class:`UserString`" #: ../Doc/library/collections.rst:1229 msgid "" @@ -1217,6 +1693,11 @@ msgid "" "directly from :class:`str`; however, this class can be easier to work with " "because the underlying string is accessible as an attribute." msgstr "" +"La clase, :class:`UserString` actúa como un envoltorio alrededor de los " +"objetos de cadena. La necesidad de esta clase ha sido parcialmente " +"suplantada por la capacidad de crear subclases directamente de :class:`str`; " +"sin embargo, es más fácil trabajar con esta clase porque se puede acceder a " +"la cadena subyacente como atributo." #: ../Doc/library/collections.rst:1237 msgid "" @@ -1226,21 +1707,33 @@ msgid "" "to a copy of *seq*. The *seq* argument can be any object which can be " "converted into a string using the built-in :func:`str` function." msgstr "" +"Clase que simula un objeto de cadena. El contenido de la instancia se " +"mantiene en un objeto de cadena normal, al que se puede acceder a través del " +"atributo :attr:`data` de las instancias :class:`UserString`. El contenido de " +"la instancia se establece inicialmente en una copia de *seq*. El argumento " +"*seq* puede ser cualquier objeto que se pueda convertir en una cadena usando " +"la función incorporada :func:`str`." #: ../Doc/library/collections.rst:1244 msgid "" "In addition to supporting the methods and operations of strings, :class:" "`UserString` instances provide the following attribute:" msgstr "" +"Además de admitir los métodos y operaciones de cadenas, las instancias :" +"class:`UserString` proporcionan el siguiente atributo:" #: ../Doc/library/collections.rst:1249 msgid "" "A real :class:`str` object used to store the contents of the :class:" "`UserString` class." msgstr "" +"Un objeto real :class:`str` usado para almacenar el contenido de la clase :" +"class:`UserString`." #: ../Doc/library/collections.rst:1252 msgid "" "New methods ``__getnewargs__``, ``__rmod__``, ``casefold``, ``format_map``, " "``isprintable``, and ``maketrans``." msgstr "" +"Nuevos métodos ``__getnewargs__``, ``__rmod__``, ``casefold``, " +"``format_map``, ``isprintable``, y ``maketrans``."