Skip to content

Traducido archivo library/graphlib #1273

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 5 commits into from
Dec 8, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions TRANSLATORS
Original file line number Diff line number Diff line change
Expand Up @@ -151,6 +151,7 @@ Yohanna Padrino (@Yo-hanaPR)
Adolfo Villalobos (@AdolfoVillalobos)
José Luis Salgado Banda (@josephLSalgado)
Marcos Medrano (@mmmarcos)
Cristhian Ortiz (@crisortiz92)
Gonzalo Tixilima (@javoweb)
Frank Montalvo Ochoa (@fmontalvoo)
Diego Cristóbal (@dcristobalh)
Expand Down
4 changes: 4 additions & 0 deletions dictionaries/library_graphlib.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
acíclico
procéselos
topológicamente
topológico
105 changes: 96 additions & 9 deletions library/graphlib.po
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2021.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Python en Español 3.9\n"
Expand All @@ -14,21 +13,23 @@ msgstr ""
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\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.9.1\n"

#: ../Doc/library/graphlib.rst:2
msgid ":mod:`graphlib` --- Functionality to operate with graph-like structures"
msgstr ""
":mod:`graphlib` ---Funcionalidad para operar con estructuras de tipo-grafo"

#: ../Doc/library/graphlib.rst:8
msgid "**Source code:** :source:`Lib/graphlib.py`"
msgstr ""
msgstr "**Código fuente:** :source:`Lib/graphlib.py`"

#: ../Doc/library/graphlib.rst:20
msgid "Provides functionality to topologically sort a graph of hashable nodes."
msgstr ""
"Provee una funcionalidad para ordenar topológicamente un grafo de nodos hash."

#: ../Doc/library/graphlib.rst:22
msgid ""
Expand All @@ -41,6 +42,15 @@ msgid ""
"topological ordering is possible if and only if the graph has no directed "
"cycles, that is, if it is a directed acyclic graph."
msgstr ""
"Un ordenamiento topológico es un ordenamiento lineal de los vértices en un "
"grafo de modo que para cada arista dirigida u -> v desde el vértice u al "
"vértice v, el vértice u viene antes del vértice v en el ordenamiento. Por "
"ejemplo, los vértices del grafo pueden representar tareas a realizar y las "
"aristas pueden representar restricciones de que una tarea debe realizarse "
"antes que otra; en este ejemplo, un ordenamiento topológico es solo una "
"secuencia válida para las tareas. Es posible un ordenamiento topológico "
"completo si y solo si el grafo no tiene ciclos dirigidos, es decir, si es un "
"grafo acíclico dirigido."

#: ../Doc/library/graphlib.rst:31
msgid ""
Expand All @@ -50,58 +60,80 @@ msgid ""
"nodes that have edges that point to the value in the key). Additional nodes "
"can be added to the graph using the :meth:`~TopologicalSorter.add` method."
msgstr ""
"Si se proporciona el argumento opcional *graph*, este debe ser un "
"diccionario que represente un grafo acíclico dirigido donde las claves son "
"nodos y los valores son iterables de todos los predecesores de ese nodo en "
"el grafo (los nodos que tienen las aristas que apuntan al valor clave). Se "
"pueden agregar nodos adicionales al grafo utilizando el :meth:"
"`~TopologicalSorter.add` method."

#: ../Doc/library/graphlib.rst:37
msgid ""
"In the general case, the steps required to perform the sorting of a given "
"graph are as follows:"
msgstr ""
"En el caso general, los pasos necesarios para realizar el ordenamiento de un "
"grafo son los siguientes:"

#: ../Doc/library/graphlib.rst:40
msgid ""
"Create an instance of the :class:`TopologicalSorter` with an optional "
"initial graph."
msgstr ""
"Cree una instancia :class:`TopologicalSorter` con un grafo inicial opcional."

#: ../Doc/library/graphlib.rst:42
msgid "Add additional nodes to the graph."
msgstr ""
msgstr "Agregue nodos adicionales al grafo."

#: ../Doc/library/graphlib.rst:43
msgid "Call :meth:`~TopologicalSorter.prepare` on the graph."
msgstr ""
msgstr "Llame a :meth:`~TopologicalSorter.prepare` en el grafo."

#: ../Doc/library/graphlib.rst:44
msgid ""
"While :meth:`~TopologicalSorter.is_active` is ``True``, iterate over the "
"nodes returned by :meth:`~TopologicalSorter.get_ready` and process them. "
"Call :meth:`~TopologicalSorter.done` on each node as it finishes processing."
msgstr ""
"Mientras :meth:`~TopologicalSorter.is_active` is ``True``, itere sobre los "
"nodos retornados por :meth:`~TopologicalSorter.get_ready` y procéselos . "
"Llame a :meth:`~TopologicalSorter.done` en cada nodo a medida que finaliza "
"el procesamiento."

#: ../Doc/library/graphlib.rst:49
msgid ""
"In case just an immediate sorting of the nodes in the graph is required and "
"no parallelism is involved, the convenience method :meth:`TopologicalSorter."
"static_order` can be used directly:"
msgstr ""
"En caso de que sólo se requiera una ordenación inmediata de los nodos del "
"grafo y no haya paralelismo, se puede utilizar directamente el método de "
"conveniencia :meth:`TopologicalSorter.static_order`"

#: ../Doc/library/graphlib.rst:60
msgid ""
"The class is designed to easily support parallel processing of the nodes as "
"they become ready. For instance::"
msgstr ""
"La clase está diseñada para soportar fácilmente el procesamiento en paralelo "
"de los nodos a medida que estén listos. Para la instancia::"

#: ../Doc/library/graphlib.rst:87
msgid ""
"Add a new node and its predecessors to the graph. Both the *node* and all "
"elements in *predecessors* must be hashable."
msgstr ""
"Añade un nuevo nodo y sus predecesores al grafo. Tanto el *node* como todos "
"los elementos de *predecessors* deben ser hashables."

#: ../Doc/library/graphlib.rst:90
msgid ""
"If called multiple times with the same node argument, the set of "
"dependencies will be the union of all dependencies passed in."
msgstr ""
"Si se llama varias veces con el mismo argumento del nodo, el conjunto de "
"dependencias será la unión de todas las dependencias pasadas."

#: ../Doc/library/graphlib.rst:93
msgid ""
Expand All @@ -110,11 +142,17 @@ msgid ""
"provided before is included among *predecessors* it will be automatically "
"added to the graph with no predecessors of its own."
msgstr ""
"Es posible añadir un nodo sin dependencias (no se proporciona "
"*predecessors*) o proporcionar una dependencia dos veces. Si un nodo que no "
"se ha proporcionado antes se incluye entre los *predecessors*, se añadirá "
"automáticamente al grafo sin predecesores propios."

#: ../Doc/library/graphlib.rst:98
msgid ""
"Raises :exc:`ValueError` if called after :meth:`~TopologicalSorter.prepare`."
msgstr ""
"Provoca :exc:`ValueError` si se llama después de :meth:`~TopologicalSorter."
"prepare`."

#: ../Doc/library/graphlib.rst:102
msgid ""
Expand All @@ -125,6 +163,12 @@ msgid ""
"be modified, and therefore no more nodes can be added using :meth:"
"`~TopologicalSorter.add`."
msgstr ""
"Marca el grafo como terminado y comprueba si existen ciclos en el grafo. Si "
"se detecta algún ciclo, se lanzará :exc:`CycleError`, pero se puede seguir "
"utilizando :meth:`~TopologicalSorter.get_ready` para obtener tantos nodos "
"como sea posible hasta que los ciclos bloqueen más el progreso. Después de "
"una llamada a esta función, el grafo no puede ser modificado, y por lo tanto "
"no se pueden añadir más nodos utilizando :meth:`~TopologicalSorter.add`."

#: ../Doc/library/graphlib.rst:111
msgid ""
Expand All @@ -135,29 +179,43 @@ msgid ""
"`TopologicalSorter.done` is less than the number that have been returned by :"
"meth:`TopologicalSorter.get_ready`."
msgstr ""
"Retorna ``True`` si se puede avanzar más y ``False`` en caso contrario. Se "
"puede avanzar si los ciclos no bloquean la resolución y, o bien todavía "
"existen nodos listos que aún no han sido retornados por :meth:"
"`TopologicalSorter.get_ready` o el número de nodos marcados con :meth:"
"`TopologicalSorter.done` es menor que el número que han sido retornados por :"
"meth:`TopologicalSorter.get_ready`."

#: ../Doc/library/graphlib.rst:118
msgid ""
"The :meth:`~TopologicalSorter.__bool__` method of this class defers to this "
"function, so instead of::"
msgstr ""
"El método :meth:`~TopologicalSorter.__bool__` de esta clase defiere a esta "
"función, por lo que en lugar de::"

#: ../Doc/library/graphlib.rst:124
msgid "it is possible to simply do::"
msgstr ""
msgstr "es posible hacer simplemente::"

#: ../Doc/library/graphlib.rst:129 ../Doc/library/graphlib.rst:152
msgid ""
"Raises :exc:`ValueError` if called without calling :meth:`~TopologicalSorter."
"prepare` previously."
msgstr ""
"Lanzar :exc:`ValueError` si se llama sin llamar previamente a :meth:"
"`~TopologicalSorter.prepare`."

#: ../Doc/library/graphlib.rst:134
msgid ""
"Marks a set of nodes returned by :meth:`TopologicalSorter.get_ready` as "
"processed, unblocking any successor of each node in *nodes* for being "
"returned in the future by a call to :meth:`TopologicalSorter.get_ready`."
msgstr ""
"Marca un conjunto de nodos retornados por :meth:`TopologicalSorter."
"get_ready` como procesados, desbloqueando cualquier sucesor de cada nodo en "
"*nodes* para ser retornado en el futuro por una llamada a :meth:"
"`TopologicalSorter.get_ready`."

#: ../Doc/library/graphlib.rst:138
msgid ""
Expand All @@ -167,6 +225,11 @@ msgid ""
"meth:`~TopologicalSorter.prepare` or if node has not yet been returned by :"
"meth:`~TopologicalSorter.get_ready`."
msgstr ""
"Lanza :exc:`ValueError` si algún nodo de *nodes* ya ha sido marcado como "
"procesado por una llamada anterior a este método o si un nodo no fue añadido "
"al grafo usando :meth:`TopologicalSorter.add`, si se llama sin llamar a :"
"meth:`~TopologicalSorter.prepare` o si el nodo aún no ha sido retornado por :"
"meth:`~TopologicalSorter.get_ready`."

#: ../Doc/library/graphlib.rst:146
msgid ""
Expand All @@ -176,6 +239,12 @@ msgid ""
"nodes that have all their predecessors already processed. Once no more "
"progress can be made, empty tuples are returned."
msgstr ""
"Retorna una ``tupla`` con todos los nodos que están listos. Inicialmente "
"retorna todos los nodos sin predecesores, y una vez que éstos se marcan como "
"procesados llamando a :meth:`TopologicalSorter.done`, las llamadas "
"posteriores devolverán todos los nuevos nodos que tengan todos sus "
"predecesores ya procesados. Una vez que no se puede avanzar más, se retornan "
"tuplas vacías."

#: ../Doc/library/graphlib.rst:157
msgid ""
Expand All @@ -184,12 +253,17 @@ msgid ""
"`~TopologicalSorter.done` should not be called. This method is equivalent "
"to::"
msgstr ""
"Retorna un iterable de nodos en un ordenamiento topológico. El uso de este "
"método no requiere llamar a :meth:`TopologicalSorter.prepare` o :meth:"
"`TopologicalSorter.done`. Este método es equivalente a::"

#: ../Doc/library/graphlib.rst:169
msgid ""
"The particular order that is returned may depend on the specific order in "
"which the items were inserted in the graph. For example:"
msgstr ""
"El orden concreto que se retorna puede depender del orden específico en que "
"se insertaron los elementos en el grafo. Por ejemplo:"

#: ../Doc/library/graphlib.rst:186
msgid ""
Expand All @@ -198,25 +272,33 @@ msgid ""
"`~TopologicalSorter.get_ready`) and the order between them is determined by "
"the order of insertion."
msgstr ""
"Esto se debe a que \"0\" y \"2\" están en el mismo nivel en el gráfico "
"(habrían sido retornados en la misma llamada a :meth:`~TopologicalSorter."
"get_ready`) y el orden entre ellos está determinado por el orden de "
"inserción."

#: ../Doc/library/graphlib.rst:192
msgid "If any cycle is detected, :exc:`CycleError` will be raised."
msgstr ""
msgstr "Si se detecta algún ciclo, se lanzará :exc:`CycleError`."

#: ../Doc/library/graphlib.rst:198
msgid "Exceptions"
msgstr ""
msgstr "Excepciones"

#: ../Doc/library/graphlib.rst:199
msgid "The :mod:`graphlib` module defines the following exception classes:"
msgstr ""
msgstr "El módulo :mod:`graphlib` define las siguientes clases de excepción:"

#: ../Doc/library/graphlib.rst:203
msgid ""
"Subclass of :exc:`ValueError` raised by :meth:`TopologicalSorter.prepare` if "
"cycles exist in the working graph. If multiple cycles exist, only one "
"undefined choice among them will be reported and included in the exception."
msgstr ""
"Subclase de :exc:`ValueError` planteada por :meth:`TopologicalSorter."
"prepare` si existen ciclos en el grafo de trabajo. Si existen múltiples "
"ciclos, sólo se informará de una elección indefinida entre ellos y se "
"incluirá en la excepción."

#: ../Doc/library/graphlib.rst:207
msgid ""
Expand All @@ -226,3 +308,8 @@ msgid ""
"predecessor of the next node in the list. In the reported list, the first "
"and the last node will be the same, to make it clear that it is cyclic."
msgstr ""
"Se puede acceder al ciclo detectado a través del segundo elemento del "
"atributo :attr:`~CycleError.args` de la instancia de la excepción y consiste "
"en una lista de nodos, tal que cada nodo este, en el grafo, un predecesor "
"inmediato del siguiente nodo en la lista. En la lista reportada, el primer y "
"el último nodo serán el mismo, para dejar claro que es cíclico."