8000 'avances' · python/python-docs-es@7a9efa1 · GitHub
[go: up one dir, main page]

Skip to content

Commit 7a9efa1

Browse files
committed
'avances'
1 parent 97686c6 commit 7a9efa1

File tree

1 file changed

+76
-15
lines changed

1 file changed

+76
-15
lines changed

library/dataclasses.po

Lines changed: 76 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ msgstr ""
1111
"Project-Id-Version: Python 3.8\n"
1212
"Report-Msgid-Bugs-To: \n"
1313
"POT-Creation-Date: 2020-05-05 12:54+0200\n"
14-
"PO-Revision-Date: 2020-06-28 20:35-0300\n"
14+
"PO-Revision-Date: 2020-06-29 15:36-0300\n"
1515
"Language-Team: python-doc-es\n"
1616
"MIME-Version: 1.0\n"
1717
"Content-Type: text/plain; charset=UTF-8\n"
@@ -38,14 +38,13 @@ msgid ""
3838
"`__repr__` to user-defined classes. It was originally described in :pep:"
3939
"`557`."
4040
msgstr ""
41-
"Este módulo provee un decorador y funciones para añadir :term:`los métodos"
42-
" especiales <special method>` automáticamente, como por ejemplo :meth:`__init__` y :meth:"
43-
"`__repr__`, a clases definidas por el usuario. Fue originalmente descrito "
44-
"en :pep:`557`."
41+
"Este módulo provee un decorador y funciones para añadir :term:`los métodos "
42+
"especiales <special method>` automáticamente, como por ejemplo :meth:"
43+
"`__init__` y :meth:`__repr__`, a clases definidas por el usuario. Fue "
44+
"originalmente descrito en :pep:`557`."
4545

4646
# 'variable miembo' para hacer énfasis en que cada miembro es una variable de un tipo determinado
4747
#: ../Doc/library/dataclasses.rst:19
48-
#, fuzzy
4948
msgid ""
5049
"The member variables to use in these generated methods are defined using :"
5150
"pep:`526` type annotations. For example this code::"
@@ -73,15 +72,14 @@ msgstr ""
7372
msgid "Module-level decorators, classes, and functions"
7473
msgstr "Decoradores, clases y funciones del módulo"
7574

76-
# Me genera duda la traduccion al español de 'generated special methods', alguien con conocimiento profundo de Python puede aportar para definir si tiene sentido la traduccion literaria 'metodos especiales generados', que quizas pueda llevar a confusion.
7775
#: ../Doc/library/dataclasses.rst:49
78-
#, fuzzy
7976
msgid ""
8077
"This function is a :term:`decorator` that is used to add generated :term:"
8178
"`special method`\\s to classes, as described below."
8279
msgstr ""
83-
"Esta función es un :term:`decorator` utilizado para añadir :term:`los métodos "
84-
"especiales <special method>` generados a las clases, como se describe a continuación."
80+
"Esta función es un :term:`decorator` utilizado para añadir :term:`los "
81+
"métodos especiales <special method>` generados a las clases, como se "
82+
"describe a continuación."
8583

8684
#: ../Doc/library/dataclasses.rst:52
8785
msgid ""
@@ -112,9 +110,9 @@ msgid ""
112110
"class, the behavior depends on the parameter, as documented below. The "
113111
"decorator returns the same class that is called on; no new class is created."
114112
msgstr ""
115-
"El decorador :func:`dataclass` añade varios métodos mágicos (*dunder*) a la clase, "
116-
"descripto a continuación. Si algo de los métodos añadidos ya existe en la "
117-
"definición de la clase, el comportamiento dependerá del parámetro. El "
113+
"El decorador :func:`dataclass` añade varios métodos mágicos (*dunder*) a la "
114+
"clase, descripto a continuación. Si algo de los métodos añadidos ya existe "
115+
"en la definición de la clase, el comportamiento dependerá del parámetro. El "
118116
"decorador devuelve la misma clase que es llamada, no crea una nueva."
119117

120118
#: ../Doc/library/dataclasses.rst:67
@@ -124,6 +122,8 @@ msgid ""
124122
"is, these three uses of :func:`dataclass` are equivalent::"
125123
msgstr ""
126124
"Si :func:`dataclass` es llamada sin parámetros, actúa con los valores por "
125+
"defecto documentados aquí. Específicamente, los siguientes tres usos de :"
126+
"func:`dataclass` son equivalentes::"
127127

128128
#: ../Doc/library/dataclasses.rst:84
129129
msgid "The parameters to :func:`dataclass` are:"
@@ -185,18 +185,28 @@ msgid ""
185185
"instances in the comparison must be of the identical type. If ``order`` is "
186186
"true and ``eq`` is false, a :exc:`ValueError` is raised."
187187
msgstr ""
188+
"``order``: Si true ( ``False`` es el valor por defecto), :meth:`__lt__`, :"
189+
"meth:`__le__`, :meth:`__gt__` y :meth:`__ge__` son generados. Estos permiten "
190+
"comparaciones entre instancias de la clase como si fueran una tupla de sus "
191+
"campos (en orden). Ambas instancias a comparar deben ser del mismo tipo. Si "
192+
"``order`` true y ``eq`` false, lanza la excepción :exc:`ValueError`."
188193

189194
#: ../Doc/library/dataclasses.rst:117
190195
msgid ""
191196
"If the class already defines any of :meth:`__lt__`, :meth:`__le__`, :meth:"
192197
"`__gt__`, or :meth:`__ge__`, then :exc:`TypeError` is raised."
193198
msgstr ""
199+
"Si la clase ya define alguno de los siguientes métodos: :meth:`__lt__`, :"
200+
"meth:`__le__`, :meth:`__gt__` o :meth:`__ge__`, lanza la excepción :exc:"
201+
"`TypeError`."
194202

195203
#: ../Doc/library/dataclasses.rst:121
196204
msgid ""
197205
"``unsafe_hash``: If ``False`` (the default), a :meth:`__hash__` method is "
198206
"generated according to how ``eq`` and ``frozen`` are set."
199207
msgstr ""
208+
"``unsafe_hash``: Si ``False`` (por defecto), se genera el método :meth:"
209+
"`__hash__` de acuerdo a los valores de ``eq`` y ``frozen`` definidos."
200210

201211
#: ../Doc/library/dataclasses.rst:124
202212
msgid ""
@@ -207,6 +217,14 @@ msgid ""
207217
"existence and behavior of :meth:`__eq__`, and the values of the ``eq`` and "
208218
"``frozen`` flags in the :func:`dataclass` decorator."
209219
msgstr ""
220+
":meth:`__hash__` es utilizado por el método incorporado :meth:`hash()` y "
221+
67E6 "cuando los objetos definidos por la clase son añadidos a colecciones hash, "
222+
"como por ejemplo diccionarios y conjuntos. Una clase con el método :meth:"
223+
"`__hash__` definido implica que sus instancias son inmutables. La "
224+
"mutabilidad es una propiedad compleja, ya que depende de: cómo el "
225+
"programador utilice el objeto, la existencia y comportamiento de :meth:"
226+
"`__eq__` y del valor asignado a las banderas ``eq`` y ``frozen`` en el "
227+
"decorador :func:`dataclass`."
210228

211229
#: ../Doc/library/dataclasses.rst:131
212230
msgid ""
@@ -216,8 +234,20 @@ msgid ""
216234
"attribute ``__hash__ = None`` has a specific meaning to Python, as described "
217235
"in the :meth:`__hash__` documentation."
218236
msgstr ""
219-
237+
":func:`dataclass` no añade por defecto (de forma implícita) el método :meth:"
238+
"`__hash__` a menos que sea seguro hacerlo, tampoco añade o cambia un método :"
239+
"meth:`__hash__` explícitamente ya definido. Definir el atributo de clase "
240+
"``__hash__ = None`` tiene un significado específico en Python, descripto en "
241+
"la documentación dedicada a :meth:`__hash__`."
242+
243+
# Sé que puede ser confuso en Python la mutabilidad e inmutablilidad de
244+
# los objetos, pero tiene su lógica por la cuestión de referencia
245+
# (heredado de los punteros de C parece), pero en este párrafo la línea
246+
# " if you class is logically immutable but nonetheless be mutated " es
247+
# muy ambigua y confusa. Es bienvenida a la traduccion cualquier
248+
# arrojo de luz sobre esta cuestion. Gracias!
220249
#: ../Doc/library/dataclasses.rst:137
250+
#, fuzzy
221251
msgid ""
222252
"If :meth:`__hash__` is not explicit defined, or if it is set to ``None``, "
223253
"then :func:`dataclass` *may* add an implicit :meth:`__hash__` method. "
@@ -226,6 +256,13 @@ msgid ""
226256
"class is logically immutable but can nonetheless be mutated. This is a "
227257
"specialized use case and should be considered carefully."
228258
msgstr ""
259+
"Si :meth:`__hash__` no está definido explícitamente o si es designado como "
260+
"``None``, :func:`dataclass` *quizás* añade implícitamente el método :meth:"
261+
"`__hash__`. Aunque no sea recomendable, es posible forzar que :func:"
262+
"`dataclass`cree un método :meth:`__hash__` mediante ``unsafe_hash=True``; "
263+
"esto es factible si su clase es lógicamente inmutable pero sin embargo puede "
264+
"ser modificada. Este es un caso especial de uso que debe ser considerado "
265+
"cuidadosamente."
229266

230267
#: ../Doc/library/dataclasses.rst:144
231268
msgid ""
@@ -234,8 +271,19 @@ msgid ""
234271
"in your dataclass and set ``unsafe_hash=True``; this will result in a :exc:"
235272
"`TypeError`."
236273
msgstr ""
237-
274+
"A continuación se explican las reglas que aplican en la creación implícita "
275+
"del método :meth:`__hash__`. Observar que no es compatible definir "
276+
"explícitamente :meth:`__hash__` en su clase y a su vez asignar "
277+
"``unsafe_hash=True``; esto lanza la excepción :exc:`TypeError`."
278+
279+
# Para mí hash, unhash no tienen una traducción literal interesante
280+
# y es un térmito bastante utilizado en la literatura, asi que decidí
281+
# dejarlo así, pero son bienvenidas las sugerencias por supuesto!
282+
# Lo mismo con true y false, la programacion misma te obliga a adoptar
283+
# el término en ingles e incluso así se mantiene en la literatura en español, por
284+
# lo menos donde he visto hasta el momento.
238285
#: ../Doc/library/dataclasses.rst:149
286+
#, fuzzy
239287
msgid ""
240288
"If ``eq`` and ``frozen`` are both true, by default :func:`dataclass` will "
241289
"generate a :meth:`__hash__` method for you. If ``eq`` is true and "
@@ -245,6 +293,14 @@ msgid ""
245293
"superclass will be used (if the superclass is :class:`object`, this means it "
246294
"will fall back to id-based hashing)."
247295
msgstr ""
296+
"Si a ``eq`` y a `` frozen `` son asignadas true, :func:`dataclass` genera "
297+
"por defecto un método :meth:`hash` por ti. En el caso que ``eq`` sea true y "
298+
"``frozen`` false, a :meth:`__hash__` se le asigna ``None``, en consecuencia "
299+
"será unhashable (lo cual es deseable, ya que es mutable). Si ``eq`` es "
300+
"false :meth_`__hash__` permanece sin cambios, por lo tanto en este caso "
301+
"aplica el uso del método :meth:`hash` heredado de la superclase (sólo si la "
302+
"superclase es :class:`object`, esto significa que cae en manos del hashing "
303+
"basado en el id de los objetos)."
248304

249305
#: ../Doc/library/dataclasses.rst:157
250306
msgid ""
@@ -253,6 +309,11 @@ msgid ""
253309
"`__setattr__` or :meth:`__delattr__` is defined in the class, then :exc:"
254310
"`TypeError` is raised. See the discussion below."
255311
msgstr ""
312+
"``frozen``: Si true (el valor por defecto es ``False``), cualquier "
313+
"asignación a un campo de la clase lanza una excepción. Esto emula el "
314+
"comportamiento de las instancias frozen de sólo lectura. Si :meth:"
315+
"`__setattr__` o :meth:`___delattr__` son definidos en la class, lanzará la "
316+
"excepción :exc:`TypeError`. Esto es ampliado debajo."
256317

257318
#: ../Doc/library/dataclasses.rst:162
258319
msgid ""

0 commit comments

Comments
 (0)
0