From bf8084c2eb89387fed4a49e85a053c15d79f8377 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cristi=C3=A1n=20Maureira-Fredes?= Date: Sat, 14 Jan 2023 21:20:22 +0100 Subject: [PATCH 1/4] Traducido library/itertools Closes #1885 --- library/itertools.po | 142 ++++++++++++++++++++----------------------- 1 file changed, 66 insertions(+), 76 deletions(-) diff --git a/library/itertools.po b/library/itertools.po index f99325b3d1..3dc4c99b91 100644 --- a/library/itertools.po +++ b/library/itertools.po @@ -13,12 +13,12 @@ msgstr "" "POT-Creation-Date: 2022-10-25 19:47+0200\n" "PO-Revision-Date: 2021-08-04 21:35+0200\n" "Last-Translator: Cristián Maureira-Fredes \n" -"Language: es\n" "Language-Team: python-doc-es\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"Language: es\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Generated-By: Babel 2.10.3\n" #: ../Doc/library/itertools.rst:2 @@ -469,21 +469,16 @@ msgid "Roughly equivalent to::" msgstr "Aproximadamente equivalente a::" #: ../Doc/library/itertools.rst:136 -#, fuzzy msgid "" "There are a number of uses for the *func* argument. It can be set to :func:" "`min` for a running minimum, :func:`max` for a running maximum, or :func:" "`operator.mul` for a running product. Amortization tables can be built by " "accumulating interest and applying payments:" msgstr "" -"Hay un número de usos para el argumento *func*. Se le puede asignar :func:" -"`min` para calcular un mínimo acumulado, :func:`max` para un máximo " -"acumulado, o :func:`operator.mul` para un producto acumulado. Se pueden " -"crear tablas de amortización al acumular intereses y aplicando pagos. " -"`Relaciones de recurrencias `_ de primer orden se puede modelar al proveer el " -"valor inicial en el iterable y utilizando sólo el total acumulado en el " -"argumento *func*::" +"Hay varios usos para el argumento *func*. Se puede establecer en :func:`min` " +"para un mínimo en ejecución, :func:`max` para un máximo en ejecución o :func:" +"`operator.mul` para un producto en ejecución. Las tablas de amortización se " +"pueden construir acumulando intereses y aplicando pagos:" #: ../Doc/library/itertools.rst:154 msgid "" @@ -529,26 +524,24 @@ msgstr "" "entrada." #: ../Doc/library/itertools.rst:195 ../Doc/library/itertools.rst:244 -#, fuzzy msgid "" "The combination tuples are emitted in lexicographic ordering according to " "the order of the input *iterable*. So, if the input *iterable* is sorted, " "the output tuples will be produced in sorted order." msgstr "" "Las tuplas de combinación se emiten en orden lexicográfico según el orden de " -"la entrada *iterable*. Entonces, si la entrada *iterable* está ordenada, las " -"tuplas de combinación se producirán en una secuencia ordenada." +"la entrada *iterable*. Por lo tanto, si se ordena la entrada *iterable*, las " +"tuplas de salida se producirán en orden." #: ../Doc/library/itertools.rst:199 -#, fuzzy msgid "" "Elements are treated as unique based on their position, not on their value. " "So if the input elements are unique, there will be no repeated values in " "each combination." msgstr "" -"Los elementos son tratados como únicos basados en su posición, no en su " -"valor. De esta manera, si los elementos de entrada son únicos, no habrá " -"valores repetidos en cada combinación." +"Los elementos se tratan como únicos en función de su posición, no de su " +"valor. Entonces, si los elementos de entrada son únicos, no habrá valores " +"repetidos en cada combinación." #: ../Doc/library/itertools.rst:225 msgid "" @@ -733,7 +726,6 @@ msgid ":func:`groupby` is roughly equivalent to::" msgstr ":func:`groupby` es aproximadamente equivalente a::" #: ../Doc/library/itertools.rst:437 -#, fuzzy msgid "" "Make an iterator that returns selected elements from the iterable. If " "*start* is non-zero, then elements from the iterable are skipped until start " @@ -742,18 +734,13 @@ msgid "" "``None``, then iteration continues until the iterator is exhausted, if at " "all; otherwise, it stops at the specified position." msgstr "" -"Crea un iterador que retorna los elementos seleccionados del iterable. Si " -"*start* es diferente a cero, los elementos del iterable son ignorados hasta " -"que se llegue a *start*. Después de eso, los elementos son retornados " -"consecutivamente a menos que *step* posea un valor tan alto que permita que " -"algunos elementos sean ignorados. Si *stop* es ``None``, la iteración " -"continúa hasta que el iterador sea consumido (si es que llega a ocurrir); de " -"lo contrario, se detiene en la posición especificada. A diferencia de la " -"segmentación normal, :func:`islice` no soporta valores negativos para " -"*start*, *stop*, o *step*. Puede usarse para extraer campos relacionados de " -"estructuras de datos que internamente has sido simplificadas (por ejemplo, " -"un reporte multilínea puede contener un nombre de campo cada tres líneas). " -"Aproximadamente equivalente a::" +"Cree un iterador que devuelva los elementos seleccionados del iterable. Si " +"*start* es distinto de cero, los elementos del iterable se omiten hasta que " +"se alcanza el inicio. Posteriormente, los elementos se devuelven " +"consecutivamente a menos que *step* se establezca en un valor superior a " +"uno, lo que da como resultado que se omitan los elementos. Si *stop* es " +"``None``, la iteración continúa hasta que se agota el iterador, si es que se " +"agota; de lo contrario, se detiene en la posición especificada." #: ../Doc/library/itertools.rst:444 msgid "" @@ -770,6 +757,11 @@ msgid "" "where the internal structure has been flattened (for example, a multi-line " "report may list a name field on every third line)." msgstr "" +"A diferencia del corte normal, :func:`islice` no admite valores negativos " +"para *start*, *stop* o *step*. Se puede usar para extraer campos " +"relacionados de datos donde la estructura interna se ha aplanado (por " +"ejemplo, un informe de varias líneas puede incluir un campo de nombre cada " +"tres líneas)." #: ../Doc/library/itertools.rst:482 msgid "Return successive overlapping pairs taken from the input *iterable*." @@ -803,26 +795,24 @@ msgstr "" "longitud serán generadas." #: ../Doc/library/itertools.rst:507 -#, fuzzy msgid "" "The permutation tuples are emitted in lexicographic order according to the " "order of the input *iterable*. So, if the input *iterable* is sorted, the " "output tuples will be produced in sorted order." msgstr "" "Las tuplas de permutación se emiten en orden lexicográfico según el orden de " -"la entrada *iterable*. Entonces, si la entrada *iterable* está ordenada, las " -"tuplas de combinación se producirán en una secuencia ordenada." +"la entrada *iterable*. Por lo tanto, si se ordena la entrada *iterable*, las " +"tuplas de salida se producirán en orden." #: ../Doc/library/itertools.rst:511 -#, fuzzy msgid "" "Elements are treated as unique based on their position, not on their value. " "So if the input elements are unique, there will be no repeated values within " "a permutation." msgstr "" -"Los elementos son tratados como únicos según su posición, y no su valor. " -"Por ende, no habrá elementos repetidos en cada permutación si los elementos " -"de entrada son únicos." +"Los elementos se tratan como únicos en función de su posición, no de su " +"valor. Entonces, si los elementos de entrada son únicos, no habrá valores " +"repetidos dentro de una permutación." #: ../Doc/library/itertools.rst:542 msgid "" @@ -902,30 +892,28 @@ msgid "" "Make an iterator that returns *object* over and over again. Runs " "indefinitely unless the *times* argument is specified." msgstr "" +"Cree un iterador que devuelva *object* una y otra vez. Se ejecuta " +"indefinidamente a menos que se especifique el argumento *times*." #: ../Doc/library/itertools.rst:606 -#, fuzzy msgid "" "A common use for *repeat* is to supply a stream of constant values to *map* " "or *zip*:" msgstr "" -"Un uso común de *repeat* es el de proporcionar un flujo de valores " -"constantes a *map* o *zip*::" +"Un uso común de *repeat* es proporcionar un flujo de valores constantes a " +"*map* o *zip*:" #: ../Doc/library/itertools.rst:616 -#, fuzzy msgid "" "Make an iterator that computes the function using arguments obtained from " "the iterable. Used instead of :func:`map` when argument parameters are " "already grouped in tuples from a single iterable (when the data has been " "\"pre-zipped\")." msgstr "" -"Crea un iterador que calcula la función utilizando argumentos obtenidos del " -"iterable. Se usa en lugar de :func:`map` cuando los argumentos ya están " -"agrupados en tuplas de un mismo iterable (los datos ya han sido \"pre-" -"comprimidos”). La diferencia entre :func:`map` y :func:`starmap` es similar " -"a la distinción entre ``function(a,b)`` y ``function(*c)``. Aproximadamente " -"equivalente a::" +"Cree un iterador que calcule la función usando argumentos obtenidos del " +"iterable. Se usa en lugar de :func:`map` cuando los parámetros de argumento " +"ya están agrupados en tuplas de un solo iterable (cuando los datos se han " +"\"comprimido previamente\")." #: ../Doc/library/itertools.rst:621 msgid "" @@ -933,6 +921,9 @@ msgid "" "distinction between ``function(a,b)`` and ``function(*c)``. Roughly " "equivalent to::" msgstr "" +"La diferencia entre :func:`map` y :func:`starmap` es paralela a la " +"distinción entre ``function(a,b)`` y ``function(*c)``. Aproximadamente " +"equivalente a:" #: ../Doc/library/itertools.rst:633 msgid "" @@ -947,26 +938,24 @@ msgid "Return *n* independent iterators from a single iterable." msgstr "Retorna *n* iteradores independientes de un mismo iterador." #: ../Doc/library/itertools.rst:649 -#, fuzzy msgid "" "The following Python code helps explain what *tee* does (although the actual " "implementation is more complex and uses only a single underlying :abbr:`FIFO " "(first-in, first-out)` queue)::" msgstr "" -"El código Python a continuación ayuda a explicar el funcionamiento de *tee* " -"(aunque la implementación real es mucho más compleja y usa sólo una cola :" -"abbr:`FIFO (first-in, first-out)` subyacente)." +"El siguiente código de Python ayuda a explicar lo que hace *tee* (aunque la " +"implementación real es más compleja y usa solo una sola cola subyacente :" +"abbr:`FIFO (primero en entrar, primero en salir)`):" #: ../Doc/library/itertools.rst:668 -#, fuzzy msgid "" "Once a :func:`tee` has been created, the original *iterable* should not be " "used anywhere else; otherwise, the *iterable* could get advanced without the " "tee objects being informed." msgstr "" -"Una vez que :func:`tee` ha hecho un corte, el *iterable* original no se " -"debería usar en otro lugar. De lo contrario, el *iterable* podría avanzarse " -"sin informar a los objetos *tee*." +"Una vez que se ha creado un :func:`tee`, el *iterable* original no debe " +"usarse en ningún otro lugar; de lo contrario, el *iterable* podría avanzar " +"sin que se informe a los objetos en T." #: ../Doc/library/itertools.rst:672 msgid "" @@ -1039,6 +1028,15 @@ msgid "" "`collections` modules as well as with the built-in itertools such as " "``map()``, ``filter()``, ``reversed()``, and ``enumerate()``." msgstr "" +"El propósito principal de las recetas de itertools es educativo. Las recetas " +"muestran varias formas de pensar sobre herramientas individuales; por " +"ejemplo, que ``chain.from_iterable`` está relacionado con el concepto de " +"aplanamiento. Las recetas también brindan ideas sobre las formas en que se " +"pueden combinar las herramientas, por ejemplo, cómo `compress()` y `range()` " +"pueden funcionar juntas. Las recetas también muestran patrones para usar " +"itertools con los módulos :mod:`operator` y :mod:`collections`, así como con " +"las itertools integradas, como ``map()``, ``filter()``, ``reversed()`` y " +"``enumerate()``." #: ../Doc/library/itertools.rst:731 msgid "" @@ -1047,6 +1045,10 @@ msgid "" "as recipes. Currently, the ``iter_index()`` recipe is being tested to see " "whether it proves its worth." msgstr "" +"Un propósito secundario de las recetas es servir como incubadora. Las " +"itertools ``accumulate()``, ``compress()`` y ``pairwise()`` comenzaron como " +"recetas. Actualmente, la receta ``iter_index()`` se está probando para ver " +"si demuestra su valor." #: ../Doc/library/itertools.rst:736 msgid "" @@ -1059,7 +1061,6 @@ msgstr "" "itertools/>`_, ubicado en el Python Package Index::" #: ../Doc/library/itertools.rst:742 -#, fuzzy msgid "" "Many of the recipes offer the same high performance as the underlying " "toolset. Superior memory performance is kept by processing elements one at a " @@ -1069,22 +1070,11 @@ msgid "" "preferring \"vectorized\" building blocks over the use of for-loops and :" "term:`generator`\\s which incur interpreter overhead." msgstr "" -"Las herramientas adicionales ofrecen el mismo alto rendimiento que las " -"herramientas subyacentes. El rendimiento de memoria superior se mantiene al " -"procesar los elementos uno a uno, y no cargando el iterable entero en " -"memoria. El volumen de código se mantiene bajo al enlazar las herramientas " -"en estilo funcional, eliminando variables temporales. La alta velocidad se " -"retiene al preferir piezas \"vectorizadas\" sobre el uso de bucles `for` y :" -"term:`generator`\\s que puedan incurrir en costos extra." - -#~ msgid "" -#~ "Make an iterator that returns *object* over and over again. Runs " -#~ "indefinitely unless the *times* argument is specified. Used as argument " -#~ "to :func:`map` for invariant parameters to the called function. Also " -#~ "used with :func:`zip` to create an invariant part of a tuple record." -#~ msgstr "" -#~ "Crea un iterador que retorna *object* una y otra vez. Se ejecuta " -#~ "indefinidamente a menos que se especifique el argumento *times*. Se " -#~ "utiliza como argumento de :func:`map` para argumentos invariantes de la " -#~ "función invocada. También se usa con :func:`zip` para crear una parte " -#~ "invariante de una tupla." +"Muchas de las recetas ofrecen el mismo alto rendimiento que el conjunto de " +"herramientas subyacente. El rendimiento superior de la memoria se mantiene " +"procesando los elementos de uno en uno en lugar de llevar todo el iterable a " +"la memoria de una sola vez. El volumen del código se mantiene pequeño al " +"vincular las herramientas en un estilo funcional que ayuda a eliminar las " +"variables temporales. Se mantiene la alta velocidad al preferir bloques de " +"construcción \"vectorizados\" sobre el uso de bucles for y :term:" +"`generator`\\s que incurren en una sobrecarga del intérprete." From 32833445ca29e295c12b3132d65d3da1990b0c0c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cristi=C3=A1n=20Maureira-Fredes?= Date: Mon, 16 Jan 2023 12:07:31 +0100 Subject: [PATCH 2/4] agregando palabra --- dictionaries/library_itertools.txt | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/dictionaries/library_itertools.txt b/dictionaries/library_itertools.txt index 694288061c..98c957b06e 100644 --- a/dictionaries/library_itertools.txt +++ b/dictionaries/library_itertools.txt @@ -1,12 +1,13 @@ -álgebra Haskell +elem +it +itn +key pred seq -itn step -it -elem -vectorizadas -key +stop sumable -stop \ No newline at end of file +vectorizadas +vectorizados +álgebra From d5495c19465f7bf138372ff8b9086f619a2d08b6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cristi=C3=A1n=20Maureira-Fredes?= Date: Sun, 26 Feb 2023 19:32:23 +0100 Subject: [PATCH 3/4] Apply suggestions from code review Co-authored-by: Marcos Medrano --- library/itertools.po | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/library/itertools.po b/library/itertools.po index 3dc4c99b91..afbc0beebb 100644 --- a/library/itertools.po +++ b/library/itertools.po @@ -734,7 +734,7 @@ msgid "" "``None``, then iteration continues until the iterator is exhausted, if at " "all; otherwise, it stops at the specified position." msgstr "" -"Cree un iterador que devuelva los elementos seleccionados del iterable. Si " +"Crea un iterador que retorna los elementos seleccionados del iterable. Si " "*start* es distinto de cero, los elementos del iterable se omiten hasta que " "se alcanza el inicio. Posteriormente, los elementos se devuelven " "consecutivamente a menos que *step* se establezca en un valor superior a " @@ -892,7 +892,7 @@ msgid "" "Make an iterator that returns *object* over and over again. Runs " "indefinitely unless the *times* argument is specified." msgstr "" -"Cree un iterador que devuelva *object* una y otra vez. Se ejecuta " +"Crea un iterador que retorna *object* una y otra vez. Se ejecuta " "indefinidamente a menos que se especifique el argumento *times*." #: ../Doc/library/itertools.rst:606 @@ -910,7 +910,7 @@ msgid "" "already grouped in tuples from a single iterable (when the data has been " "\"pre-zipped\")." msgstr "" -"Cree un iterador que calcule la función usando argumentos obtenidos del " +"Crea un iterador que calcula la función usando argumentos obtenidos del " "iterable. Se usa en lugar de :func:`map` cuando los parámetros de argumento " "ya están agrupados en tuplas de un solo iterable (cuando los datos se han " "\"comprimido previamente\")." From c58c48edcb6aa2ff579126c44af5d4dd7c537495 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cristi=C3=A1n=20Maureira-Fredes?= Date: Sun, 26 Feb 2023 19:32:57 +0100 Subject: [PATCH 4/4] Quitando palabra --- dictionaries/library_itertools.txt | 1 - 1 file changed, 1 deletion(-) diff --git a/dictionaries/library_itertools.txt b/dictionaries/library_itertools.txt index 98c957b06e..675e4fd424 100644 --- a/dictionaries/library_itertools.txt +++ b/dictionaries/library_itertools.txt @@ -8,6 +8,5 @@ seq step stop sumable -vectorizadas vectorizados álgebra