From e45bc241790d02669075e9c403116143995cf448 Mon Sep 17 00:00:00 2001 From: Claudia Date: Wed, 4 Aug 2021 08:53:29 +0100 Subject: [PATCH 1/4] first commit of the 2.0 whatsnew translation --- whatsnew/2.0.po | 1102 +++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 1063 insertions(+), 39 deletions(-) diff --git a/whatsnew/2.0.po b/whatsnew/2.0.po index 5feff6078f..2332c7d6b1 100644 --- a/whatsnew/2.0.po +++ b/whatsnew/2.0.po @@ -6,45 +6,55 @@ # 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: 2021-08-04 08:53+0100\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: \n" +"Language: es\n" +"X-Generator: Poedit 3.0\n" #: ../Doc/whatsnew/2.0.rst:3 +#, fuzzy msgid "What's New in Python 2.0" -msgstr "" +msgstr "Novedades de Python 2.0" #: ../Doc/whatsnew/2.0.rst msgid "Author" -msgstr "" +msgstr "Autor" #: ../Doc/whatsnew/2.0.rst:5 +#, fuzzy msgid "A.M. Kuchling and Moshe Zadka" -msgstr "" +msgstr "A.M. Kuchling y Moshe Zadka" #: ../Doc/whatsnew/2.0.rst:13 msgid "Introduction" -msgstr "" +msgstr "Introducción" #: ../Doc/whatsnew/2.0.rst:15 +#, fuzzy msgid "" "A new release of Python, version 2.0, was released on October 16, 2000. This " "article covers the exciting new features in 2.0, highlights some other " "useful changes, and points out a few incompatible changes that may require " "rewriting code." msgstr "" +"El 16 de octubre de 2000 se publicó una nueva versión de Python, la 2.0. " +"Este artículo cubre las emocionantes nuevas características de la 2.0, " +"destaca algunos otros cambios útiles y señala algunos cambios incompatibles " +"que pueden requerir reescribir el código." #: ../Doc/whatsnew/2.0.rst:20 +#, fuzzy msgid "" "Python's development never completely stops between releases, and a steady " "flow of bug fixes and improvements are always being submitted. A host of " @@ -55,12 +65,24 @@ msgid "" "for PythonLabs are now getting paid to spend their days fixing bugs, and " "also due to the improved communication resulting from moving to SourceForge." msgstr "" +"El desarrollo de Python nunca se detiene por completo entre versiones, y " +"siempre se presenta un flujo constante de correcciones de errores y mejoras. " +"Una gran cantidad de correcciones menores, algunas optimizaciones, " +"docstrings adicionales y mejores mensajes de error fueron incluidos en la " +"versión 2.0; sería imposible enumerarlos todos, pero son ciertamente " +"significativos. Consulte los registros CVS disponibles públicamente si desea " +"ver la lista completa. Este progreso se debe a que los cinco " +"desarrolladores que trabajan para PythonLabs reciben ahora una remuneración " +"por pasar sus días arreglando errores, y también a la mejora de la " +"comunicación resultante del traslado a SourceForge." #: ../Doc/whatsnew/2.0.rst:33 +#, fuzzy msgid "What About Python 1.6?" -msgstr "" +msgstr "¿Qué pasa con Python 1.6?" #: ../Doc/whatsnew/2.0.rst:35 +#, fuzzy msgid "" "Python 1.6 can be thought of as the Contractual Obligations Python release. " "After the core development team left CNRI in May 2000, CNRI requested that a " @@ -71,8 +93,18 @@ msgid "" "received a few fixes to ensure that it's forward-compatible with Python " "2.0. 1.6 is therefore part of Python's evolution, and not a side branch." msgstr "" +"Python 1.6 puede considerarse como la versión de Python de las Obligaciones " +"Contractuales. Después de que el equipo principal de desarrollo dejara el " +"CNRI en mayo de 2000, el CNRI pidió que se creara una versión 1.6 que " +"contuviera todo el trabajo sobre Python que se había realizado en el CNRI. " +"Por lo tanto, Python 1.6 representa el estado del árbol CVS en mayo de 2000, " +"siendo la novedad más importante el soporte de Unicode. El desarrollo " +"continuó después de mayo, por supuesto, así que el árbol 1.6 recibió algunas " +"correcciones para asegurar que es compatible con Python 2.0. 1.Por lo " +"tanto, la 6 es parte de la evolución de Python, y no una rama lateral." #: ../Doc/whatsnew/2.0.rst:44 +#, fuzzy msgid "" "So, should you take much interest in Python 1.6? Probably not. The " "1.6final and 2.0beta1 releases were made on the same day (September 5, " @@ -83,12 +115,23 @@ msgid "" "2.0. Most of the really interesting features described in this document are " "only in 2.0, because a lot of work was done between May and September." msgstr "" +"Entonces, ¿deberías interesarte mucho por Python 1.6? Probablemente no. " +"Las versiones 1.6final y 2.0beta1 se publicaron el mismo día (5 de " +"septiembre de 2000), y el plan es finalizar Python 2.0 en un mes más o " +"menos. Si tienes aplicaciones que mantener, no parece que tenga mucho " +"sentido romper cosas al pasar a la 1.6, arreglarlas, y luego tener otra " +"ronda de roturas dentro de un mes al pasar a la 2.0; es mejor pasar " +"directamente a la 2.0. La mayoría de las características realmente " +"interesantes descritas en este documento sólo están en la 2.0, porque se " +"hizo mucho trabajo entre mayo y septiembre." #: ../Doc/whatsnew/2.0.rst:57 +#, fuzzy msgid "New Development Process" -msgstr "" +msgstr "Nuevo proceso de desarrollo" #: ../Doc/whatsnew/2.0.rst:59 +#, fuzzy msgid "" "The most important change in Python 2.0 may not be to the code at all, but " "to how Python is developed: in May 2000 the Python developers began using " @@ -98,8 +141,17 @@ msgid "" "available from Python's project page, located at https://sourceforge.net/" "projects/python/." msgstr "" +"El cambio más importante en Python 2.0 puede que no sea en el código en " +"absoluto, sino en la forma de desarrollar Python: en mayo de 2000 los " +"desarrolladores de Python comenzaron a utilizar las herramientas puestas a " +"disposición por SourceForge para almacenar el código fuente, rastrear los " +"informes de errores y gestionar la cola de envíos de parches. Para informar " +"de errores o enviar parches para Python 2.0, utilice las herramientas de " +"seguimiento de errores y gestión de parches disponibles en la página del " +"proyecto Python, situada en https://sourceforge.net/projects/python/." #: ../Doc/whatsnew/2.0.rst:66 +#, fuzzy msgid "" "The most important of the services now hosted at SourceForge is the Python " "CVS tree, the version-controlled repository containing the source code for " @@ -118,8 +170,28 @@ msgid "" "access, probably that task would have been viewed as \"nice, but not worth " "the time and effort needed\" and it would never have gotten done." msgstr "" +"El más importante de los servicios alojados ahora en SourceForge es el árbol " +"CVS de Python, el repositorio de versiones controladas que contiene el " +"código fuente de Python. Anteriormente, había unas 7 personas que tenían " +"acceso de escritura al árbol CVS, y todos los parches tenían que ser " +"inspeccionados y comprobados por una de las personas de esta corta lista. " +"Obviamente, esto no era muy escalable. Al trasladar el árbol CVS a " +"SourceForge, fue posible conceder acceso de escritura a más personas; en " +"septiembre de 2000 había 27 personas que podían revisar los cambios, un " +"aumento de cuatro veces. Esto hace posible cambios a gran escala que no se " +"intentarían si tuvieran que pasar por el pequeño grupo de desarrolladores " +"del núcleo. Por ejemplo, un día a Peter Schneider-Kamp se le ocurrió dejar " +"de lado la compatibilidad con K&R C y convertir el código fuente de Python a " +"ANSI C. Después de obtener la aprobación en la lista de correo de python-" +"dev, se lanzó a una ráfaga de revisiones que duró aproximadamente una " +"semana, otros desarrolladores se unieron para ayudar, y el trabajo estaba " +"hecho. Si sólo hubiera habido 5 personas con acceso de escritura, " +"probablemente esa tarea habría sido considerada como \"agradable, pero no " +"vale la pena el tiempo y el esfuerzo necesarios\" y nunca se habría " +"realizado." #: ../Doc/whatsnew/2.0.rst:83 +#, fuzzy msgid "" "The shift to using SourceForge's services has resulted in a remarkable " "increase in the speed of development. Patches now get submitted, commented " @@ -133,8 +205,22 @@ msgid "" "notification e-mail messages that are completely unhelpful, so Ka-Ping Yee " "wrote an HTML screen-scraper that sends more useful messages." msgstr "" +"El cambio al uso de los servicios de SourceForge ha dado lugar a un notable " +"aumento de la velocidad de desarrollo. Ahora los parches se envían, se " +"comentan, son revisados por otras personas además del remitente original, y " +"van de un lado a otro hasta que se considera que el parche merece ser " +"revisado. Los errores se rastrean en una ubicación central y se pueden " +"asignar a una persona específica para que los corrija, y podemos contar el " +"número de errores abiertos para medir el progreso. Esto no ha tenido un " +"coste: los desarrolladores tienen ahora más correo electrónico con el que " +"lidiar, más listas de correo que seguir, y se han tenido que escribir " +"herramientas especiales para el nuevo entorno. Por ejemplo, SourceForge " +"envía por defecto mensajes de correo electrónico de notificación de parches " +"y errores que son completamente inútiles, por lo que Ka-Ping Yee escribió un " +"raspador de pantalla HTML que envía mensajes más útiles." #: ../Doc/whatsnew/2.0.rst:95 +#, fuzzy msgid "" "The ease of adding code caused a few initial growing pains, such as code was " "checked in before it was ready or without getting clear agreement from the " @@ -148,8 +234,22 @@ msgid "" "can still ignore the result of a vote, and approve or reject a change even " "if the community disagrees with him." msgstr "" +"La facilidad para añadir código provocó algunos problemas iniciales de " +"crecimiento, como el hecho de que el código se registrara antes de estar " +"listo o sin obtener un acuerdo claro del grupo de desarrolladores. El " +"proceso de aprobación que ha surgido es algo similar al utilizado por el " +"grupo Apache. Los desarrolladores pueden votar +1, +0, -0 o -1 sobre un " +"parche; +1 y -1 denotan aceptación o rechazo, mientras que +0 y -0 " +"significan que el desarrollador es mayormente indiferente al cambio, aunque " +"con un ligero sesgo positivo o negativo. El cambio más significativo con " +"respecto al modelo de Apache es que la votación es esencialmente consultiva, " +"lo que permite a Guido van Rossum, que tiene el estatus de Dictador " +"Benevolente Vitalicio, saber cuál es la opinión general. Puede seguir " +"ignorando el resultado de una votación y aprobar o rechazar un cambio aunque " +"la comunidad no esté de acuerdo con él." #: ../Doc/whatsnew/2.0.rst:106 +#, fuzzy msgid "" "Producing an actual patch is the last step in adding a new feature, and is " "usually easy compared to the earlier task of coming up with a good design. " @@ -162,24 +262,48 @@ msgid "" "accepting or rejecting the proposal. Quoting from the introduction to :pep:" "`1`, \"PEP Purpose and Guidelines\":" msgstr "" +"Producir un parche real es el último paso en la adición de una nueva " +"característica, y suele ser fácil en comparación con la tarea anterior de " +"llegar a un buen diseño. Las discusiones sobre nuevas funcionalidades a " +"menudo pueden explotar en largos hilos de la lista de correo, haciendo que " +"la discusión sea difícil de seguir, y nadie puede leer todos los mensajes en " +"python-dev. Por lo tanto, se ha establecido un proceso relativamente formal " +"para escribir Propuestas de Mejora de Python (PEPs), siguiendo el modelo del " +"proceso RFC de Internet. Las PEP son borradores de documentos que describen " +"una nueva característica propuesta, y se revisan continuamente hasta que la " +"comunidad llega a un consenso, aceptando o rechazando la propuesta. Cita de " +"la introducción de :pep:`1`, \"PEP Purpose and Guidelines\":" #: ../Doc/whatsnew/2.0.rst:120 +#, fuzzy msgid "" "PEP stands for Python Enhancement Proposal. A PEP is a design document " "providing information to the Python community, or describing a new feature " "for Python. The PEP should provide a concise technical specification of the " "feature and a rationale for the feature." msgstr "" +"PEP son las siglas de Python Enhancement Proposal. Un PEP es un documento " +"de diseño que proporciona información a la comunidad de Python, o que " +"describe una nueva característica para Python. El PEP debe proporcionar una " +"especificación técnica concisa de la característica y una justificación de " +"la misma." #: ../Doc/whatsnew/2.0.rst:125 +#, fuzzy msgid "" "We intend PEPs to be the primary mechanisms for proposing new features, for " "collecting community input on an issue, and for documenting the design " "decisions that have gone into Python. The PEP author is responsible for " "building consensus within the community and documenting dissenting opinions." msgstr "" +"Pretendemos que los PEPs sean los mecanismos principales para proponer " +"nuevas características, para recoger las opiniones de la comunidad sobre un " +"tema y para documentar las decisiones de diseño que se han tomado en " +"Python. El autor del PEP es responsable de crear consenso dentro de la " +"comunidad y de documentar las opiniones discrepantes." #: ../Doc/whatsnew/2.0.rst:130 +#, fuzzy msgid "" "Read the rest of :pep:`1` for the details of the PEP editorial process, " "style, and format. PEPs are kept in the Python CVS tree on SourceForge, " @@ -188,20 +312,33 @@ msgid "" "September 2000, there are 25 PEPS, ranging from :pep:`201`, \"Lockstep " "Iteration\", to PEP 225, \"Elementwise/Objectwise Operators\"." msgstr "" +"Lee el resto de :pep:`1` para conocer los detalles del proceso editorial, el " +"estilo y el formato de los PEP. Los PEP se mantienen en el árbol CVS de " +"Python en SourceForge, aunque no forman parte de la distribución de Python " +"2.0, y también están disponibles en formato HTML en https://www.python.org/" +"dev/peps/. En septiembre de 2000, había 25 PEPS, desde :pep:`201`, " +"\"Lockstep Iteration\", hasta PEP 225, \"Elementwise/Objectwise Operators\"." #: ../Doc/whatsnew/2.0.rst:141 +#, fuzzy msgid "Unicode" -msgstr "" +msgstr "Unicode" #: ../Doc/whatsnew/2.0.rst:143 +#, fuzzy msgid "" "The largest new feature in Python 2.0 is a new fundamental data type: " "Unicode strings. Unicode uses 16-bit numbers to represent characters " "instead of the 8-bit number used by ASCII, meaning that 65,536 distinct " "characters can be supported." msgstr "" +"La mayor novedad de Python 2.0 es un nuevo tipo de datos fundamental: Las " +"cadenas Unicode. Unicode utiliza números de 16 bits para representar los " +"caracteres en lugar de los 8 bits utilizados por ASCII, lo que significa que " +"se pueden admitir 65.536 caracteres distintos." #: ../Doc/whatsnew/2.0.rst:148 +#, fuzzy msgid "" "The final interface for Unicode support was arrived at through countless " "often-stormy discussions on the python-dev mailing list, and mostly " @@ -210,8 +347,16 @@ msgid "" "was written up as :pep:`100`, \"Python Unicode Integration\". This article " "will simply cover the most significant points about the Unicode interfaces." msgstr "" +"La interfaz final para el soporte de Unicode se alcanzó a través de " +"innumerables discusiones, a menudo tormentosas, en la lista de correo de " +"python-dev, y fue implementada en su mayor parte por Marc-André Lemburg, " +"basándose en una implementación del tipo de cadena Unicode de Fredrik " +"Lundh. Una explicación detallada de la interfaz fue escrita como :pep:" +"`100`, \"Python Unicode Integration\". Este artículo se limitará a cubrir " +"los puntos más significativos de las interfaces Unicode." #: ../Doc/whatsnew/2.0.rst:155 +#, fuzzy msgid "" "In Python source code, Unicode strings are written as ``u\"string\"``. " "Arbitrary Unicode characters can be written using a new escape sequence, ``" @@ -219,8 +364,15 @@ msgid "" "The existing ``\\xHHHH`` escape sequence can also be used, and octal escapes " "can be used for characters up to U+01FF, which is represented by ``\\777``." msgstr "" +"En el código fuente de Python, las cadenas Unicode se escriben como ``u " +"\"cadena\"``. Los caracteres Unicode arbitrarios pueden escribirse " +"utilizando una nueva secuencia de escape, ``uHHHH``, donde *HHHH* es un " +"número hexadecimal de 4 dígitos desde 0000 hasta FFFF. También se puede " +"utilizar la secuencia de escape existente ``xHHHH``, y se pueden utilizar " +"escapes octales para caracteres hasta U+01FF, que se representa con ``777``." #: ../Doc/whatsnew/2.0.rst:161 +#, fuzzy msgid "" "Unicode strings, just like regular strings, are an immutable sequence type. " "They can be indexed and sliced, but not modified in place. Unicode strings " @@ -233,32 +385,58 @@ msgid "" "installation by calling the ``sys.setdefaultencoding(encoding)`` function in " "a customized version of :file:`site.py`." msgstr "" +"Las cadenas Unicode, al igual que las cadenas normales, son un tipo de " +"secuencia inmutable. Pueden ser indexadas y cortadas, pero no modificadas en " +"su lugar. Las cadenas Unicode tienen un método ``encode( [encoding] )`` que " +"devuelve una cadena de 8 bits en la codificación deseada. Las " +"codificaciones son nombradas por cadenas, como ``'ascii'``, ``'utf-8'``, " +"``'iso-8859-1'``, o lo que sea. Se define una API de códecs para " +"implementar y registrar nuevas codificaciones que luego están disponibles en " +"todo el programa Python. Si no se especifica una codificación, la " +"codificación por defecto suele ser ASCII de 7 bits, aunque puede cambiarse " +"para tu instalación de Python llamando a la función ``sys." +"setdefaultencoding(encoding)`` en una versión personalizada de :file:`site." +"py`." #: ../Doc/whatsnew/2.0.rst:172 +#, fuzzy msgid "" "Combining 8-bit and Unicode strings always coerces to Unicode, using the " "default ASCII encoding; the result of ``'a' + u'bc'`` is ``u'abc'``." msgstr "" +"La combinación de cadenas de 8 bits y Unicode siempre coacciona a Unicode, " +"utilizando la codificación ASCII por defecto; el resultado de ``'a' + " +"u'bc'`` es ``u'abc'``." #: ../Doc/whatsnew/2.0.rst:175 +#, fuzzy msgid "" "New built-in functions have been added, and existing built-ins modified to " "support Unicode:" msgstr "" +"Se han añadido nuevas funciones incorporadas y se han modificado las " +"existentes para que sean compatibles con Unicode:" #: ../Doc/whatsnew/2.0.rst:178 +#, fuzzy msgid "" "``unichr(ch)`` returns a Unicode string 1 character long, containing the " "character *ch*." msgstr "" +"``unichr(ch)`` devuelve una cadena Unicode de 1 carácter, que contiene el " +"carácter *ch*." #: ../Doc/whatsnew/2.0.rst:181 +#, fuzzy msgid "" "``ord(u)``, where *u* is a 1-character regular or Unicode string, returns " "the number of the character as an integer." msgstr "" +"``ord(u)``, donde *u* es una cadena regular o Unicode de 1 carácter, " +"devuelve el número del carácter como un entero." #: ../Doc/whatsnew/2.0.rst:184 +#, fuzzy msgid "" "``unicode(string [, encoding] [, errors] )`` creates a Unicode string from " "an 8-bit string. ``encoding`` is a string naming the encoding to use. The " @@ -268,8 +446,17 @@ msgid "" "errors to be silently ignored and ``'replace'`` uses U+FFFD, the official " "replacement character, in case of any problems." msgstr "" +"``unicode(string [, encoding] [, errors] )`` crea una cadena Unicode a " +"partir de una cadena de 8 bits. ``encoding`` es una cadena que nombra la " +"codificación a utilizar. El parámetro ``errors`` especifica el tratamiento " +"de los caracteres que no son válidos para la codificación actual; pasar " +"``'strict`` como valor hace que se lance una excepción en cualquier error de " +"codificación, mientras que ``'ignore`` hace que los errores se ignoren " +"silenciosamente y ``'replace`` utiliza U+FFFD, el carácter oficial de " +"reemplazo, en caso de cualquier problema." #: ../Doc/whatsnew/2.0.rst:192 +#, fuzzy msgid "" "The ``exec`` statement, and various built-ins such as ``eval()``, " "``getattr()``, and ``setattr()`` will also accept Unicode strings as well as " @@ -277,8 +464,15 @@ msgid "" "built-ins; if you find a built-in function that accepts strings but doesn't " "accept Unicode strings at all, please report it as a bug.)" msgstr "" +"La sentencia ``exec``, y varias funciones integradas como ``eval()``, " +"``getattr()``, y ``setattr()`` también aceptarán cadenas Unicode así como " +"cadenas regulares. (Es posible que en el proceso de corrección de esto se " +"hayan pasado por alto algunas funciones incorporadas; si encuentra una " +"función incorporada que acepte cadenas pero que no acepte cadenas Unicode en " +"absoluto, por favor, infórmelo como un error)" #: ../Doc/whatsnew/2.0.rst:198 +#, fuzzy msgid "" "A new module, :mod:`unicodedata`, provides an interface to Unicode character " "properties. For example, ``unicodedata.category(u'A')`` returns the 2-" @@ -286,16 +480,29 @@ msgid "" "it's uppercase. ``unicodedata.bidirectional(u'\\u0660')`` returns 'AN', " "meaning that U+0660 is an Arabic number." msgstr "" +"Un nuevo módulo, :mod:`unicodedata`, proporciona una interfaz para las " +"propiedades de los caracteres Unicode. Por ejemplo, ``unicodedata." +"category(u'A')`` devuelve la cadena de 2 caracteres 'Lu', la 'L' denota que " +"es una letra, y la 'u' significa que es mayúscula. ``unicodedata." +"bidirectional(u'\\u0660')`` devuelve 'AN', lo que significa que U+0660 es un " +"número árabe." #: ../Doc/whatsnew/2.0.rst:204 +#, fuzzy msgid "" "The :mod:`codecs` module contains functions to look up existing encodings " "and register new ones. Unless you want to implement a new encoding, you'll " "most often use the ``codecs.lookup(encoding)`` function, which returns a 4-" "element tuple: ``(encode_func, decode_func, stream_reader, stream_writer)``." msgstr "" +"El módulo :mod:`codecs` contiene funciones para buscar codificaciones " +"existentes y registrar otras nuevas. A menos que quiera implementar una " +"nueva codificación, lo más habitual es que utilice la función ``codecs." +"lookup(encoding)``, que devuelve una tupla de 4 elementos: ``(encode_func, " +"decode_func, stream_reader, stream_writer)``." #: ../Doc/whatsnew/2.0.rst:209 +#, fuzzy msgid "" "*encode_func* is a function that takes a Unicode string, and returns a 2-" "tuple ``(string, length)``. *string* is an 8-bit string containing a " @@ -303,49 +510,77 @@ msgid "" "encoding, and *length* tells you how much of the Unicode string was " "converted." msgstr "" +"*encode_func* es una función que toma una cadena Unicode, y devuelve una 2-" +"tupla ``(cadena, longitud)``. *string* es una cadena de 8 bits que contiene " +"una porción (tal vez toda) de la cadena Unicode convertida a la codificación " +"dada, y *longitud* indica la cantidad de cadena Unicode convertida." #: ../Doc/whatsnew/2.0.rst:214 +#, fuzzy msgid "" "*decode_func* is the opposite of *encode_func*, taking an 8-bit string and " "returning a 2-tuple ``(ustring, length)``, consisting of the resulting " "Unicode string *ustring* and the integer *length* telling how much of the 8-" "bit string was consumed." msgstr "" +"*decode_func* es lo opuesto a *encode_func*, tomando una cadena de 8 bits y " +"devolviendo una 2-tupla ``(ustring, length)``, que consiste en la cadena " +"Unicode resultante *ustring* y el entero *length* que dice cuánto de la " +"cadena de 8 bits se consumió." #: ../Doc/whatsnew/2.0.rst:219 +#, fuzzy msgid "" "*stream_reader* is a class that supports decoding input from a stream. " "*stream_reader(file_obj)* returns an object that supports the :meth:`read`, :" "meth:`readline`, and :meth:`readlines` methods. These methods will all " "translate from the given encoding and return Unicode strings." msgstr "" +"*stream_reader* es una clase que soporta la decodificación de la entrada de " +"un flujo. *stream_reader(file_obj)* devuelve un objeto que soporta los " +"métodos :meth:`read`, :meth:`readline` y :meth:`readlines`. Todos estos " +"métodos traducirán desde la codificación dada y devolverán cadenas Unicode." #: ../Doc/whatsnew/2.0.rst:224 +#, fuzzy msgid "" "*stream_writer*, similarly, is a class that supports encoding output to a " "stream. *stream_writer(file_obj)* returns an object that supports the :meth:" "`write` and :meth:`writelines` methods. These methods expect Unicode " "strings, translating them to the given encoding on output." msgstr "" +"*stream_writer*, de forma similar, es una clase que soporta la codificación " +"de la salida a un flujo. *stream_writer(file_obj)* devuelve un objeto que " +"soporta los métodos :meth:`write` y :meth:`writelines`. Estos métodos " +"esperan cadenas Unicode, traduciéndolas a la codificación dada en la salida." #: ../Doc/whatsnew/2.0.rst:229 +#, fuzzy msgid "" "For example, the following code writes a Unicode string into a file, " "encoding it as UTF-8::" msgstr "" +"Por ejemplo, el siguiente código escribe una cadena Unicode en un archivo, " +"codificándola como UTF-8::" #: ../Doc/whatsnew/2.0.rst:243 +#, fuzzy msgid "The following code would then read UTF-8 input from the file::" -msgstr "" +msgstr "El siguiente código leería la entrada UTF-8 del archivo::" #: ../Doc/whatsnew/2.0.rst:249 +#, fuzzy msgid "" "Unicode-aware regular expressions are available through the :mod:`re` " "module, which has a new underlying implementation called SRE written by " "Fredrik Lundh of Secret Labs AB." msgstr "" +"Las expresiones regulares compatibles con Unicode están disponibles a través " +"del módulo :mod:`re`, que tiene una nueva implementación subyacente llamada " +"SRE escrita por Fredrik Lundh de Secret Labs AB." #: ../Doc/whatsnew/2.0.rst:253 +#, fuzzy msgid "" "A ``-U`` command line option was added which causes the Python compiler to " "interpret all string literals as Unicode string literals. This is intended " @@ -353,12 +588,20 @@ msgid "" "future version of Python may drop support for 8-bit strings and provide only " "Unicode strings." msgstr "" +"Se ha añadido una opción de línea de comandos ``-U`` que hace que el " +"compilador de Python interprete todos los literales de cadena como literales " +"de cadena Unicode. Esta opción está pensada para ser utilizada en las " +"pruebas y para asegurar el futuro de su código Python, ya que alguna versión " +"futura de Python puede dejar de soportar cadenas de 8 bits y proporcionar " +"sólo cadenas Unicode." #: ../Doc/whatsnew/2.0.rst:262 +#, fuzzy msgid "List Comprehensions" -msgstr "" +msgstr "Comprensión de listas" #: ../Doc/whatsnew/2.0.rst:264 +#, fuzzy msgid "" "Lists are a workhorse data type in Python, and many programs manipulate a " "list at some point. Two common operations on lists are to loop over them, " @@ -367,8 +610,16 @@ msgid "" "might want to pull out all the strings containing a given substring, or " "strip off trailing whitespace from each line." msgstr "" +"Las listas son un tipo de datos muy útil en Python, y muchos programas " +"manipulan una lista en algún momento. Dos operaciones comunes en las listas " +"son hacer un bucle sobre ellas, y escoger los elementos que cumplen un " +"cierto criterio, o aplicar alguna función a cada elemento. Por ejemplo, " +"dada una lista de cadenas, podrías querer sacar todas las cadenas que " +"contengan una determinada subcadena, o quitar los espacios en blanco de cada " +"línea." #: ../Doc/whatsnew/2.0.rst:271 +#, fuzzy msgid "" "The existing :func:`map` and :func:`filter` functions can be used for this " "purpose, but they require a function as one of their arguments. This is " @@ -379,19 +630,34 @@ msgid "" "paragraph, finding all the strings in the list containing a given " "substring. You could write the following to do it::" msgstr "" +"Las funciones :func:`map` y :func:`filter` existentes pueden usarse para " +"este propósito, pero requieren una función como uno de sus argumentos. Esto " +"está bien si hay una función incorporada que se puede pasar directamente, " +"pero si no la hay, hay que crear una pequeña función para hacer el trabajo " +"requerido, y las reglas de ámbito de Python hacen que el resultado sea feo " +"si la pequeña función necesita información adicional. Tomemos el primer " +"ejemplo del párrafo anterior, encontrar todas las cadenas de la lista que " +"contienen una subcadena dada. Podrías escribir lo siguiente para hacerlo::" #: ../Doc/whatsnew/2.0.rst:286 +#, fuzzy msgid "" "Because of Python's scoping rules, a default argument is used so that the " "anonymous function created by the :keyword:`lambda` expression knows what " "substring is being searched for. List comprehensions make this cleaner::" msgstr "" +"Debido a las reglas de ámbito de Python, se utiliza un argumento por defecto " +"para que la función anónima creada por la expresión :keyword:`lambda` sepa " +"qué subcadena se está buscando. Las comprensiones de lista hacen esto más " +"limpio::" #: ../Doc/whatsnew/2.0.rst:292 +#, fuzzy msgid "List comprehensions have the form::" -msgstr "" +msgstr "Las comprensiones de listas tienen la forma::" #: ../Doc/whatsnew/2.0.rst:299 +#, fuzzy msgid "" "The :keyword:`!for`...\\ :keyword:`!in` clauses contain the sequences to be " "iterated over. The sequences do not have to be the same length, because " @@ -401,29 +667,50 @@ msgid "" "keyword:`!if` clause is optional; if present, *expression* is only evaluated " "and added to the result if *condition* is true." msgstr "" +"Las cláusulas :keyword:`!for`...\\N- :keyword:`!in` contienen las secuencias " +"a iterar. Las secuencias no tienen por qué tener la misma longitud, ya que " +"no se itera sobre ellas en paralelo, sino de izquierda a derecha; esto se " +"explica más claramente en los párrafos siguientes. Los elementos de la " +"lista generada serán los valores sucesivos de la *expresión*. La cláusula " +"final :keyword:`!if` es opcional; si está presente, la *expresión* sólo se " +"evalúa y se añade al resultado si la *condición* es verdadera." #: ../Doc/whatsnew/2.0.rst:307 +#, fuzzy msgid "" "To make the semantics very clear, a list comprehension is equivalent to the " "following Python code::" msgstr "" +"Para dejar muy clara la semántica, una comprensión de lista equivale al " +"siguiente código de Python::" #: ../Doc/whatsnew/2.0.rst:319 +#, fuzzy msgid "" "This means that when there are multiple :keyword:`!for`...\\ :keyword:`!in` " "clauses, the resulting list will be equal to the product of the lengths of " "all the sequences. If you have two lists of length 3, the output list is 9 " "elements long::" msgstr "" +"Esto significa que cuando hay múltiples cláusulas :keyword:`!for`...\\N- :" +"keyword:`!in`, la lista resultante será igual al producto de las longitudes " +"de todas las secuencias. Si tiene dos listas de longitud 3, la lista de " +"salida tendrá 9 elementos::" #: ../Doc/whatsnew/2.0.rst:330 +#, fuzzy msgid "" "To avoid introducing an ambiguity into Python's grammar, if *expression* is " "creating a tuple, it must be surrounded with parentheses. The first list " "comprehension below is a syntax error, while the second one is correct::" msgstr "" +"Para evitar introducir una ambigüedad en la gramática de Python, si " +"*expresión* está creando una tupla, debe estar rodeada de paréntesis. La " +"primera comprensión de la lista a continuación es un error de sintaxis, " +"mientras que la segunda es correcta::" #: ../Doc/whatsnew/2.0.rst:339 +#, fuzzy msgid "" "The idea of list comprehensions originally comes from the functional " "programming language Haskell (https://www.haskell.org). Greg Ewing argued " @@ -431,12 +718,20 @@ msgid "" "comprehension patch, which was then discussed for a seemingly endless time " "on the python-dev mailing list and kept up-to-date by Skip Montanaro." msgstr "" +"La idea de las comprensiones de listas procede originalmente del lenguaje de " +"programación funcional Haskell (https://www.haskell.org). Greg Ewing fue el " +"que más abogó por añadirlas a Python y escribió el parche inicial de " +"comprensión de listas, que luego se discutió durante un tiempo aparentemente " +"interminable en la lista de correo de python-dev y se mantuvo actualizada " +"por Skip Montanaro." #: ../Doc/whatsnew/2.0.rst:349 +#, fuzzy msgid "Augmented Assignment" -msgstr "" +msgstr "Asignación aumentada" #: ../Doc/whatsnew/2.0.rst:351 +#, fuzzy msgid "" "Augmented assignment operators, another long-requested feature, have been " "added to Python 2.0. Augmented assignment operators include ``+=``, ``-=``, " @@ -444,8 +739,14 @@ msgid "" "value of the variable ``a`` by 2, equivalent to the slightly lengthier ``a " "= a + 2``." msgstr "" +"Los operadores de asignación aumentados, otra característica largamente " +"solicitada, han sido añadidos a Python 2.0. Los operadores de asignación " +"aumentados incluyen ``+=``, ``-=``, ``*=``, etc. Por ejemplo, la sentencia " +"``a += 2`` incrementa el valor de la variable ``a`` en 2, lo que equivale a " +"la sentencia algo más larga ``a = a + 2``." #: ../Doc/whatsnew/2.0.rst:356 +#, fuzzy msgid "" "The full list of supported assignment operators is ``+=``, ``-=``, ``*=``, " "``/=``, ``%=``, ``**=``, ``&=``, ``|=``, ``^=``, ``>>=``, and ``<<=``. " @@ -454,28 +755,46 @@ msgid "" "following :class:`Number` class stores a number and supports using += to " "create a new instance with an incremented value." msgstr "" +"La lista completa de operadores de asignación soportados es ``+=``, ``-=``, " +"``*=``, ``/=``, ``%=``, ``**=``, ``&=``, ``|=``, ``^=``, ``>>=``, y ``<=``. " +"Las clases de Python pueden anular los operadores de asignación aumentados " +"definiendo métodos llamados :meth:`__iadd__`, :meth:`__isub__`, etc. Por " +"ejemplo, la siguiente clase :class:`Number` almacena un número y soporta el " +"uso de += para crear una nueva instancia con un valor incrementado." #: ../Doc/whatsnew/2.0.rst:377 +#, fuzzy msgid "" "The :meth:`__iadd__` special method is called with the value of the " "increment, and should return a new instance with an appropriately modified " "value; this return value is bound as the new value of the variable on the " "left-hand side." msgstr "" +"El método especial :meth:`__iadd__` es llamado con el valor del incremento, " +"y debe devolver una nueva instancia con un valor adecuadamente modificado; " +"este valor de retorno se vincula como el nuevo valor de la variable del lado " +"izquierdo." #: ../Doc/whatsnew/2.0.rst:381 +#, fuzzy msgid "" "Augmented assignment operators were first introduced in the C programming " "language, and most C-derived languages, such as :program:`awk`, C++, Java, " "Perl, and PHP also support them. The augmented assignment patch was " "implemented by Thomas Wouters." msgstr "" +"Los operadores de asignación aumentada se introdujeron por primera vez en el " +"lenguaje de programación C, y la mayoría de los lenguajes derivados de C, " +"como :program:`awk`, C++, Java, Perl y PHP también los soportan. El parche " +"de asignación aumentada fue implementado por Thomas Wouters." #: ../Doc/whatsnew/2.0.rst:390 +#, fuzzy msgid "String Methods" -msgstr "" +msgstr "Métodos de cadena" #: ../Doc/whatsnew/2.0.rst:392 +#, fuzzy msgid "" "Until now string-manipulation functionality was in the :mod:`string` module, " "which was usually a front-end for the :mod:`strop` module written in C. The " @@ -485,37 +804,62 @@ msgid "" "takes 3 string arguments, that means eight possible permutations, and " "correspondingly complicated code." msgstr "" +"Hasta ahora, la funcionalidad de manipulación de cadenas estaba en el " +"módulo :mod:`string`, que normalmente era un front-end para el módulo :mod:" +"`strop` escrito en C. La adición de Unicode supuso una dificultad para el " +"módulo :mod:`strop`, porque todas las funciones tendrían que ser reescritas " +"para aceptar cadenas de 8 bits o Unicode. Para funciones como :func:`string." +"replace`, que toma 3 argumentos de cadena, eso significa ocho posibles " +"permutaciones, y el correspondiente código complicado." #: ../Doc/whatsnew/2.0.rst:400 +#, fuzzy msgid "" "Instead, Python 2.0 pushes the problem onto the string type, making string " "manipulation functionality available through methods on both 8-bit strings " "and Unicode strings. ::" msgstr "" +"En cambio, Python 2.0 traslada el problema al tipo de cadena, haciendo que " +"la funcionalidad de manipulación de cadenas esté disponible a través de " +"métodos tanto en cadenas de 8 bits como en cadenas Unicode. ::" #: ../Doc/whatsnew/2.0.rst:411 +#, fuzzy msgid "" "One thing that hasn't changed, a noteworthy April Fools' joke " "notwithstanding, is that Python strings are immutable. Thus, the string " "methods return new strings, and do not modify the string on which they " "operate." msgstr "" +"Una cosa que no ha cambiado, a pesar de una notable broma de April Fools, es " +"que las cadenas de Python son inmutables. Así, los métodos de cadenas " +"devuelven cadenas nuevas, y no modifican la cadena sobre la que operan." #: ../Doc/whatsnew/2.0.rst:415 +#, fuzzy msgid "" "The old :mod:`string` module is still around for backwards compatibility, " "but it mostly acts as a front-end to the new string methods." msgstr "" +"El antiguo módulo :mod:`string` sigue existiendo por compatibilidad con el " +"pasado, pero actúa principalmente como un front-end para los nuevos métodos " +"de cadena." #: ../Doc/whatsnew/2.0.rst:418 +#, fuzzy msgid "" "Two methods which have no parallel in pre-2.0 versions, although they did " "exist in JPython for quite some time, are :meth:`startswith` and :meth:" "`endswith`. ``s.startswith(t)`` is equivalent to ``s[:len(t)] == t``, while " "``s.endswith(t)`` is equivalent to ``s[-len(t):] == t``." msgstr "" +"Dos métodos que no tienen paralelo en las versiones anteriores a la 2.0, " +"aunque existieron en JPython durante bastante tiempo, son :meth:`startswith` " +"y :meth:`endswith`. ``s.startswith(t)`` es equivalente a ``s[:len(t)] == " +"t``, mientras que ``s.endswith(t)`` es equivalente a ``s[-len(t):] == t``." #: ../Doc/whatsnew/2.0.rst:423 +#, fuzzy msgid "" "One other method which deserves special mention is :meth:`join`. The :meth:" "`join` method of a string receives one parameter, a sequence of strings, and " @@ -523,12 +867,19 @@ msgid "" "module, with the arguments reversed. In other words, ``s.join(seq)`` is " "equivalent to the old ``string.join(seq, s)``." msgstr "" +"Otro método que merece una mención especial es :meth:`join`. El método :" +"meth:`join` de una cadena recibe un parámetro, una secuencia de cadenas, y " +"es equivalente a la función :func:`string.join` del antiguo módulo :mod:" +"`string`, con los argumentos invertidos. En otras palabras, ``s.join(seq)`` " +"es equivalente a la antigua ``string.join(seq, s)``." #: ../Doc/whatsnew/2.0.rst:433 +#, fuzzy msgid "Garbage Collection of Cycles" -msgstr "" +msgstr "Recogida de basura de los ciclos" #: ../Doc/whatsnew/2.0.rst:435 +#, fuzzy msgid "" "The C implementation of Python uses reference counting to implement garbage " "collection. Every Python object maintains a count of the number of " @@ -537,8 +888,16 @@ msgid "" "no longer accessible, since you need to have a reference to an object to " "access it, and if the count is zero, no references exist any longer." msgstr "" +"La implementación en C de Python utiliza el conteo de referencias para " +"implementar la recolección de basura. Cada objeto de Python mantiene un " +"recuento del número de referencias que apuntan a sí mismo, y ajusta el " +"recuento a medida que se crean o destruyen referencias. Una vez que el " +"recuento de referencias llega a cero, el objeto deja de ser accesible, ya " +"que es necesario tener una referencia a un objeto para acceder a él, y si el " +"recuento es cero, ya no existen referencias." #: ../Doc/whatsnew/2.0.rst:442 +#, fuzzy msgid "" "Reference counting has some pleasant properties: it's easy to understand and " "implement, and the resulting implementation is portable, fairly fast, and " @@ -547,21 +906,36 @@ msgid "" "doesn't realise that objects are no longer accessible, resulting in a memory " "leak. This happens when there are cycles of references." msgstr "" +"El conteo de referencias tiene algunas propiedades agradables: es fácil de " +"entender e implementar, y la implementación resultante es portable, bastante " +"rápida, y reacciona bien con otras bibliotecas que implementan sus propios " +"esquemas de manejo de memoria. El mayor problema del conteo de referencias " +"es que a veces no se da cuenta de que los objetos ya no son accesibles, lo " +"que provoca una fuga de memoria. Esto ocurre cuando hay ciclos de " +"referencias." #: ../Doc/whatsnew/2.0.rst:449 +#, fuzzy msgid "" "Consider the simplest possible cycle, a class instance which has a " "reference to itself::" msgstr "" +"Consideremos el ciclo más simple posible, una instancia de clase que tiene " +"una referencia a sí misma::" #: ../Doc/whatsnew/2.0.rst:455 +#, fuzzy msgid "" "After the above two lines of code have been executed, the reference count of " "``instance`` is 2; one reference is from the variable named ``'instance'``, " "and the other is from the ``myself`` attribute of the instance." msgstr "" +"Después de ejecutar las dos líneas de código anteriores, la cuenta de " +"referencias de ``instance`` es 2; una referencia es de la variable llamada " +"``'instance``, y la otra es del atributo ``myself`` de la instancia." #: ../Doc/whatsnew/2.0.rst:459 +#, fuzzy msgid "" "If the next line of code is ``del instance``, what happens? The reference " "count of ``instance`` is decreased by 1, so it has a reference count of 1; " @@ -570,8 +944,16 @@ msgid "" "objects can participate in a cycle if they have references to each other, " "causing all of the objects to be leaked." msgstr "" +"Si la siguiente línea de código es ``del instance``, ¿qué ocurre? La cuenta " +"de referencias de ``instance`` se reduce en 1, por lo que tiene una cuenta " +"de referencias de 1; la referencia en el atributo ``myself`` sigue " +"existiendo. Sin embargo, la instancia ya no es accesible a través del " +"código de Python, y podría ser eliminada. Varios objetos pueden participar " +"en un ciclo si tienen referencias entre sí, haciendo que todos los objetos " +"se filtren." #: ../Doc/whatsnew/2.0.rst:466 +#, fuzzy msgid "" "Python 2.0 fixes this problem by periodically executing a cycle detection " "algorithm which looks for inaccessible cycles and deletes the objects " @@ -579,8 +961,14 @@ msgid "" "collection, obtain debugging statistics, and tuning the collector's " "parameters." msgstr "" +"Python 2.0 soluciona este problema ejecutando periódicamente un algoritmo de " +"detección de ciclos que busca los ciclos inaccesibles y borra los objetos " +"implicados. Un nuevo módulo :mod:`gc` proporciona funciones para realizar " +"una recolección de basura, obtener estadísticas de depuración y afinar los " +"parámetros del recolector." #: ../Doc/whatsnew/2.0.rst:471 +#, fuzzy msgid "" "Running the cycle detection algorithm takes some time, and therefore will " "result in some additional overhead. It is hoped that after we've gotten " @@ -593,8 +981,20 @@ msgid "" "buggy, by specifying the :option:`!--without-cycle-gc` switch when running " "the :program:`configure` script." msgstr "" +"Ejecutar el algoritmo de detección de ciclos lleva algo de tiempo, y por lo " +"tanto resultará en una sobrecarga adicional. Se espera que después de que " +"hayamos adquirido experiencia con la recogida de ciclos al utilizar la " +"versión 2.0, Python 2.1 sea capaz de minimizar la sobrecarga con un " +"cuidadoso ajuste. Todavía no es obvio cuánto rendimiento se pierde, porque " +"la evaluación comparativa de esto es difícil y depende crucialmente de la " +"frecuencia con la que el programa crea y destruye objetos. La detección de " +"ciclos puede ser desactivada cuando Python es compilado, si no puede " +"permitirse ni siquiera una pequeña penalización de velocidad o sospecha que " +"la recolección de ciclos es un error, especificando la opción :option:`!--" +"without-cycle-gc` cuando se ejecuta el script :program:`configure`." #: ../Doc/whatsnew/2.0.rst:482 +#, fuzzy msgid "" "Several people tackled this problem and contributed to a solution. An early " "implementation of the cycle detection approach was written by Toby Kelsey. " @@ -606,23 +1006,40 @@ msgid "" "threads titled \"Reference cycle collection for Python\" and \"Finalization " "again\"." msgstr "" +"Varias personas abordaron este problema y contribuyeron a una solución. Una " +"primera implementación del enfoque de detección de ciclos fue escrita por " +"Toby Kelsey. El algoritmo actual fue sugerido por Eric Tiedemann durante " +"una visita al CNRI, y Guido van Rossum y Neil Schemenauer escribieron dos " +"implementaciones diferentes, que posteriormente fueron integradas por Neil. " +"Muchas otras personas ofrecieron sugerencias a lo largo del camino; los " +"archivos de marzo de 2000 de la lista de correo python-dev contienen la " +"mayor parte de la discusión relevante, especialmente en los hilos titulados " +"\"Colección de ciclos de referencia para Python\" y \"Finalización de nuevo" +"\"." #: ../Doc/whatsnew/2.0.rst:495 +#, fuzzy msgid "Other Core Changes" -msgstr "" +msgstr "Otros cambios en el núcleo" #: ../Doc/whatsnew/2.0.rst:497 +#, fuzzy msgid "" "Various minor changes have been made to Python's syntax and built-in " "functions. None of the changes are very far-reaching, but they're handy " "conveniences." msgstr "" +"Se han realizado varios cambios menores en la sintaxis y las funciones " +"incorporadas de Python. Ninguno de los cambios es de gran alcance, pero son " +"conveniencias prácticas." #: ../Doc/whatsnew/2.0.rst:502 +#, fuzzy msgid "Minor Language Changes" -msgstr "" +msgstr "Cambios lingüísticos menores" #: ../Doc/whatsnew/2.0.rst:504 +#, fuzzy msgid "" "A new syntax makes it more convenient to call a given function with a tuple " "of arguments and/or a dictionary of keyword arguments. In Python 1.5 and " @@ -633,8 +1050,18 @@ msgid "" "and clearer way to achieve the same effect. This syntax is symmetrical with " "the syntax for defining functions::" msgstr "" +"Una nueva sintaxis hace más conveniente llamar a una función dada con una " +"tupla de argumentos y/o un diccionario de argumentos de palabras clave. En " +"Python 1.5 y anteriores, se utilizaba la función incorporada :func:`apply`: " +"``apply(f, args, kw)`` llama a la función :func:`f` con la tupla de " +"argumentos *args* y los argumentos de palabras clave en el diccionario " +"*kw*. :func:`apply` es lo mismo en 2.0, pero gracias a un parche de Greg " +"Ewing, ``f(*args, **kw)`` es una forma más corta y clara de conseguir el " +"mismo efecto. Esta sintaxis es simétrica con la sintaxis para definir " +"funciones::" #: ../Doc/whatsnew/2.0.rst:518 +#, fuzzy msgid "" "The ``print`` statement can now have its output directed to a file-like " "object by following the ``print`` with ``>> file``, similar to the " @@ -644,16 +1071,27 @@ msgid "" "``sys.stdout`` and then restore the old value. For sending output to " "standard error, it's much easier to write this::" msgstr "" +"La sentencia ``print`` puede ahora tener su salida dirigida a un objeto tipo " +"archivo siguiendo a ``print`` con ``>> archivo``, similar al operador de " +"redirección en los shells de Unix. Antes había que utilizar el método :meth:" +"`write` del objeto tipo archivo, que carece de la comodidad y simplicidad de " +"``print``, o bien asignar un nuevo valor a ``sys.stdout`` y luego restaurar " +"el valor anterior. Para enviar la salida al error estándar, es mucho más " +"fácil escribir esto::" #: ../Doc/whatsnew/2.0.rst:528 +#, fuzzy msgid "" "Modules can now be renamed on importing them, using the syntax ``import " "module as name`` or ``from module import name as othername``. The patch was " "submitted by Thomas Wouters." msgstr "" +"Ahora se puede cambiar el nombre de los módulos al importarlos, utilizando " +"la sintaxis ``importar módulo como nombre`` o ``desde el módulo importar " +"nombre como otro nombre``. El parche fue enviado por Thomas Wouters." #: ../Doc/whatsnew/2.0.rst:532 -#, python-format +#, fuzzy, python-format msgid "" "A new format style is available when using the ``%`` operator; '%r' will " "insert the :func:`repr` of its argument. This was also added from symmetry " @@ -661,8 +1099,15 @@ msgid "" "which inserts the :func:`str` of its argument. For example, ``'%r %s' % " "('abc', 'abc')`` returns a string containing ``'abc' abc``." msgstr "" +"Un nuevo estilo de formato está disponible cuando se utiliza el operador ``" +"%``; '%r' insertará el :func:`repr` de su argumento. Esto también se añadió " +"por consideraciones de simetría, esta vez por simetría con el estilo de " +"formato existente '%s', que inserta el :func:`str` de su argumento. Por " +"ejemplo, ``'%r %s' % ('abc', 'abc')`` devuelve una cadena que contiene " +"``'abc' abc``." #: ../Doc/whatsnew/2.0.rst:538 +#, fuzzy msgid "" "Previously there was no way to implement a class that overrode Python's " "built-in :keyword:`in` operator and implemented a custom version. ``obj in " @@ -674,8 +1119,19 @@ msgid "" "built-in objects written in C can define what :keyword:`!in` means for them " "via a new slot in the sequence protocol." msgstr "" +"Anteriormente no había forma de implementar una clase que sobrepasara el " +"operador incorporado de Python :keyword:`in` e implementara una versión " +"personalizada. El operador :meth:`in` devuelve true si *obj* está presente " +"en la secuencia *seq*; Python lo calcula simplemente probando cada índice de " +"la secuencia hasta que se encuentra *obj* o se encuentra un :exc:" +"`IndexError`. Moshe Zadka ha contribuido con un parche que añade un método " +"mágico :meth:`__contains__` para proporcionar una implementación " +"personalizada para :keyword:`!in`. Además, los nuevos objetos incorporados " +"escritos en C pueden definir lo que :keyword:`!in` significa para ellos a " +"través de una nueva ranura en el protocolo de secuencia." #: ../Doc/whatsnew/2.0.rst:547 +#, fuzzy msgid "" "Earlier versions of Python used a recursive algorithm for deleting objects. " "Deeply nested data structures could cause the interpreter to fill up the C " @@ -684,8 +1140,16 @@ msgid "" "and crashed; Jeremy Hylton rewrote the code to no longer crash, producing a " "useful result instead. For example, after this code::" msgstr "" +"Las versiones anteriores de Python utilizaban un algoritmo recursivo para " +"borrar objetos. Las estructuras de datos muy anidadas podían hacer que el " +"intérprete llenara la pila de C y se bloqueara; Christian Tismer reescribió " +"la lógica de borrado para solucionar este problema. En una nota " +"relacionada, la comparación de objetos recursivos se repite infinitamente y " +"se bloquea; Jeremy Hylton reescribió el código para que no se bloquee, " +"produciendo un resultado útil. Por ejemplo, después de este código::" #: ../Doc/whatsnew/2.0.rst:559 +#, fuzzy msgid "" "The comparison ``a==b`` returns true, because the two recursive data " "structures are isomorphic. See the thread \"trashcan and PR#7\" in the April " @@ -696,8 +1160,18 @@ msgid "" "even if a user-defined :meth:`__cmp__` method encountered an error, since " "the resulting exception would simply be silently swallowed." msgstr "" +"La comparación ``a==b`` devuelve verdadero, porque las dos estructuras de " +"datos recursivas son isomorfas. Véase el hilo \"trashcan and PR#7\" en los " +"archivos de abril de 2000 de la lista de correo de python-dev para la " +"discusión que condujo a esta implementación, y algunos enlaces relevantes " +"útiles. Tenga en cuenta que las comparaciones ahora también pueden " +"generar excepciones. En versiones anteriores de Python, una operación de " +"comparación como ``cmp(a,b)`` siempre producía una respuesta, incluso si un " +"método :meth:`__cmp__` definido por el usuario encontraba un error, ya que " +"la excepción resultante simplemente se tragaba en silencio." #: ../Doc/whatsnew/2.0.rst:571 +#, fuzzy msgid "" "Work has been done on porting Python to 64-bit Windows on the Itanium " "processor, mostly by Trent Mick of ActiveState. (Confusingly, ``sys." @@ -706,16 +1180,28 @@ msgid "" "supports Windows CE; see the Python CE page at http://pythonce.sourceforge." "net/ for more information." msgstr "" +"Se ha trabajado en portar Python a Windows de 64 bits en el procesador " +"Itanium, principalmente por Trent Mick de ActiveState. (Confusamente, ``sys." +"platform`` sigue siendo ``'win32`` en Win64 porque parece que para facilitar " +"la portabilidad, MS Visual C++ trata el código como de 32 bits en Itanium) " +"PythonWin también es compatible con Windows CE; vea la página de Python CE " +"en http://pythonce.sourceforge.net/ para más información." #: ../Doc/whatsnew/2.0.rst:577 +#, fuzzy msgid "" "Another new platform is Darwin/MacOS X; initial support for it is in Python " "2.0. Dynamic loading works, if you specify \"configure --with-dyld --with-" "suffix=.x\". Consult the README in the Python source distribution for more " "instructions." msgstr "" +"Otra plataforma nueva es Darwin/MacOS X; el soporte inicial para ella está " +"en Python 2.0. La carga dinámica funciona, si se especifica \"configure --" +"with-dyld --with-suffix=.x\". Consulte el README de la distribución de " +"fuentes de Python para obtener más instrucciones." #: ../Doc/whatsnew/2.0.rst:581 +#, fuzzy msgid "" "An attempt has been made to alleviate one of Python's warts, the often-" "confusing :exc:`NameError` exception when code refers to a local variable " @@ -726,19 +1212,34 @@ msgid "" "exc:`NameError`, so any existing code that expects :exc:`NameError` to be " "raised should still work. ::" msgstr "" +"Se ha intentado aliviar uno de los defectos de Python, la a menudo confusa " +"excepción :exc:`NameError` cuando el código hace referencia a una variable " +"local antes de que se le haya asignado un valor. Por ejemplo, el siguiente " +"código lanza una excepción en la sentencia ``print`` tanto en 1.5.2 como en " +"2.0; en 1.5.2 se lanza una excepción :exc:`NameError`, mientras que en 2.0 " +"se lanza una nueva excepción :exc:`UnboundLocalError`. :exc:" +"`UnboundLocalError` es una subclase de :exc:`NameError`, así que cualquier " +"código existente que espere que se lance :exc:`NameError` debería seguir " +"funcionando. ::" #: ../Doc/whatsnew/2.0.rst:595 +#, fuzzy msgid "" "Two new exceptions, :exc:`TabError` and :exc:`IndentationError`, have been " "introduced. They're both subclasses of :exc:`SyntaxError`, and are raised " "when Python code is found to be improperly indented." msgstr "" +"Se han introducido dos nuevas excepciones, :exc:`TabError` y :exc:" +"`IndentationError`. Ambas son subclases de :exc:`SyntaxError`, y se lanzan " +"cuando el código Python se encuentra con una sangría incorrecta." #: ../Doc/whatsnew/2.0.rst:601 +#, fuzzy msgid "Changes to Built-in Functions" -msgstr "" +msgstr "Cambios en las funciones incorporadas" #: ../Doc/whatsnew/2.0.rst:603 +#, fuzzy msgid "" "A new built-in, ``zip(seq1, seq2, ...)``, has been added. :func:`zip` " "returns a list of tuples where each tuple contains the i-th element from " @@ -747,8 +1248,16 @@ msgid "" "``None`` if the sequences aren't all of the same length, while :func:`zip` " "truncates the returned list to the length of the shortest argument sequence." msgstr "" +"Se ha añadido un nuevo built-in, ``zip(seq1, seq2, ...)``. :func:`zip` " +"devuelve una lista de tuplas donde cada tupla contiene el i-ésimo elemento " +"de cada una de las secuencias del argumento. La diferencia entre :func:" +"`zip` y ``map(None, seq1, seq2)`` es que :func:`map` rellena las secuencias " +"con ``None`` si las secuencias no tienen la misma longitud, mientras que :" +"func:`zip` trunca la lista devuelta a la longitud de la secuencia argumental " +"más corta." #: ../Doc/whatsnew/2.0.rst:610 +#, fuzzy msgid "" "The :func:`int` and :func:`long` functions now accept an optional \"base\" " "parameter when the first argument is a string. ``int('123', 10)`` returns " @@ -756,8 +1265,15 @@ msgid "" "`TypeError` exception with the message \"can't convert non-string with " "explicit base\"." msgstr "" +"Las funciones :func:`int` y :func:`long` aceptan ahora un parámetro \"base\" " +"opcional cuando el primer argumento es una cadena. La función :func:" +"`int('123', 10)`` devuelve 123, mientras que la función :func:`long`` " +"devuelve 291. La función ``int('123', 16)`` lanza una excepción :exc:" +"`TypeError` con el mensaje \"no se puede convertir una cadena con base " +"explícita\"." #: ../Doc/whatsnew/2.0.rst:616 +#, fuzzy msgid "" "A new variable holding more detailed version information has been added to " "the :mod:`sys` module. ``sys.version_info`` is a tuple ``(major, minor, " @@ -765,8 +1281,15 @@ msgid "" "version_info`` would be ``(2, 0, 1, 'beta', 1)``. *level* is a string such " "as ``\"alpha\"``, ``\"beta\"``, or ``\"final\"`` for a final release." msgstr "" +"Se ha añadido al módulo :mod:`sys` una nueva variable que contiene " +"información más detallada sobre la versión. ``sys.version_info`` es una " +"tupla ``(major, minor, micro, level, serial)`` Por ejemplo, en una " +"hipotética 2.0.1beta1, ``sys.version_info`` sería ``(2, 0, 1, 'beta', 1)``. " +"*level* es una cadena como ``\"alpha\"``, ``\"beta\"``, o ``\"final\"`` para " +"una versión final." #: ../Doc/whatsnew/2.0.rst:622 +#, fuzzy msgid "" "Dictionaries have an odd new method, ``setdefault(key, default)``, which " "behaves similarly to the existing :meth:`get` method. However, if the key " @@ -774,13 +1297,21 @@ msgid "" "`get` would do, and also inserts it into the dictionary as the value for " "*key*. Thus, the following lines of code::" msgstr "" +"Los diccionarios tienen un nuevo y extraño método, ``setdefault(key, " +"default)``, que se comporta de forma similar al método :meth:`get` " +"existente. Sin embargo, si falta la clave, :meth:`setdefault` devuelve el " +"valor de *default* como haría :meth:`get`, y también lo inserta en el " +"diccionario como valor de *clave*. Así, las siguientes líneas de código::" #: ../Doc/whatsnew/2.0.rst:633 +#, fuzzy msgid "" "can be reduced to a single ``return dict.setdefault(key, [])`` statement." msgstr "" +"puede reducirse a una única sentencia ``return dict.setdefault(key, [])``." #: ../Doc/whatsnew/2.0.rst:635 +#, fuzzy msgid "" "The interpreter sets a maximum recursion depth in order to catch runaway " "recursion before filling the C stack and causing a core dump or GPF.. " @@ -790,12 +1321,22 @@ msgid "" "1000, and a rough maximum value for a given platform can be found by running " "a new script, :file:`Misc/find_recursionlimit.py`." msgstr "" +"El intérprete establece una profundidad de recursión máxima para atrapar la " +"recursión desbocada antes de llenar la pila de C y causar un volcado del " +"núcleo o GPF. Anteriormente este límite se fijaba cuando se compilaba " +"Python, pero en la versión 2.0 la profundidad máxima de recursión puede " +"leerse y modificarse usando :func:`sys.getrecursionlimit` y :func:`sys." +"setrecursionlimit`. El valor por defecto es 1000, y se puede encontrar un " +"valor máximo aproximado para una plataforma determinada ejecutando un nuevo " +"script, :file:`Misc/find_recursionlimit.py`." #: ../Doc/whatsnew/2.0.rst:647 +#, fuzzy msgid "Porting to 2.0" -msgstr "" +msgstr "Adaptación a la versión 2.0" #: ../Doc/whatsnew/2.0.rst:649 +#, fuzzy msgid "" "New Python releases try hard to be compatible with previous releases, and " "the record has been pretty good. However, some changes are considered " @@ -804,8 +1345,16 @@ msgid "" "always be avoided. This section lists the changes in Python 2.0 that may " "cause old Python code to break." msgstr "" +"Las nuevas versiones de Python se esfuerzan por ser compatibles con las " +"anteriores, y el historial ha sido bastante bueno. Sin embargo, algunos " +"cambios se consideran lo suficientemente útiles, normalmente porque corrigen " +"decisiones de diseño iniciales que resultaron ser activamente erróneas, que " +"no siempre se puede evitar romper la compatibilidad hacia atrás. Esta " +"sección enumera los cambios en Python 2.0 que pueden hacer que el código " +"Python antiguo se rompa." #: ../Doc/whatsnew/2.0.rst:656 +#, fuzzy msgid "" "The change which will probably break the most code is tightening up the " "arguments accepted by some methods. Some methods would take multiple " @@ -817,8 +1366,19 @@ msgid "" "to simply add an extra set of parentheses to pass both values as a tuple: " "``L.append( (1,2) )``." msgstr "" +"El cambio que probablemente romperá la mayor parte del código es el " +"endurecimiento de los argumentos aceptados por algunos métodos. Algunos " +"métodos tomaban múltiples argumentos y los trataban como una tupla, " +"particularmente varios métodos de lista como :meth:`append` y :meth:" +"`insert`. En versiones anteriores de Python, si ``L`` es una lista, ``L." +"append( 1,2 )`` añade la tupla ``(1,2)`` a la lista. En Python 2.0 esto " +"provoca una excepción :exc:`TypeError` con el mensaje 'append requiere " +"exactamente 1 argumento; se han dado 2'. La solución es simplemente añadir " +"un conjunto extra de paréntesis para pasar ambos valores como una tupla: " +"``L.append( (1,2) )``." #: ../Doc/whatsnew/2.0.rst:665 +#, fuzzy msgid "" "The earlier versions of these methods were more forgiving because they used " "an old function in Python's C interface to parse their arguments; 2.0 " @@ -829,8 +1389,18 @@ msgid "" "preprocessor symbol ``NO_STRICT_LIST_APPEND`` to preserve the old behaviour; " "this isn't recommended." msgstr "" +"Las versiones anteriores de estos métodos eran más indulgentes porque " +"utilizaban una antigua función de la interfaz C de Python para analizar sus " +"argumentos; la versión 2.0 los moderniza para utilizar :func:" +"`PyArg_ParseTuple`, la función actual de análisis de argumentos, que " +"proporciona mensajes de error más útiles y trata las llamadas con múltiples " +"argumentos como errores. Si es absolutamente necesario usar la versión 2.0 " +"pero no puedes arreglar tu código, puedes editar :file:`Objects/listobject." +"c` y definir el símbolo del preprocesador ``NO_STRICT_LIST_APPEND`` para " +"preservar el antiguo comportamiento; esto no es recomendable." #: ../Doc/whatsnew/2.0.rst:673 +#, fuzzy msgid "" "Some of the functions in the :mod:`socket` module are still forgiving in " "this way. For example, :func:`socket.connect( ('hostname', 25) )` is the " @@ -844,16 +1414,33 @@ msgid "" "argument form is simply marked as deprecated; it *will* be tightened up " "again in a future Python version." msgstr "" +"Algunas de las funciones del módulo :mod:`socket` siguen siendo indulgentes " +"en este sentido. Por ejemplo, :func:`socket.connect( ('hostname', 25) )` es " +"la forma correcta, pasando una tupla que representa una dirección IP, pero :" +"func:`socket.connect( 'hostname', 25 )` también funciona. :func:`socket." +"connect_ex` y :func:`socket.bind` son igualmente fáciles de usar. 2.0alpha1 " +"endureció estas funciones, pero como la documentación utilizaba la forma " +"errónea de argumentos múltiples, mucha gente escribió código que se rompería " +"con la comprobación más estricta. GvR se echó atrás en los cambios ante la " +"reacción del público, así que para el módulo :mod:`socket`, la documentación " +"se arregló y la forma de argumento múltiple simplemente se marcó como " +"obsoleta; se *reforzará* de nuevo en una futura versión de Python." #: ../Doc/whatsnew/2.0.rst:684 +#, fuzzy msgid "" "The ``\\x`` escape in string literals now takes exactly 2 hex digits. " "Previously it would consume all the hex digits following the 'x' and take " "the lowest 8 bits of the result, so ``\\x123456`` was equivalent to ``" "\\x56``." msgstr "" +"El escape ``\\x`` en los literales de cadena ahora toma exactamente 2 " +"dígitos hexadecimales. Antes consumía todos los dígitos hexadecimales que " +"seguían a la \"x\" y tomaba los 8 bits más bajos del resultado, por lo que " +"``x123456`` era equivalente a ``x56``." #: ../Doc/whatsnew/2.0.rst:688 +#, fuzzy msgid "" "The :exc:`AttributeError` and :exc:`NameError` exceptions have a more " "friendly error message, whose text will be something like ``'Spam' instance " @@ -861,9 +1448,15 @@ msgid "" "error message was just the missing attribute name ``eggs``, and code written " "to take advantage of this fact will break in 2.0." msgstr "" +"Las excepciones :exc:`AttributeError` y :exc:`NameError` tienen un mensaje " +"de error más amigable, cuyo texto será algo así como ``La instancia 'Spam' " +"no tiene el atributo 'eggs'`` o ``el nombre 'eggs' no está definido``. " +"Anteriormente, el mensaje de error era simplemente la falta del nombre del " +"atributo ``huevos``, y el código escrito para aprovechar este hecho se " +"romperá en la versión 2.0." #: ../Doc/whatsnew/2.0.rst:694 -#, python-format +#, fuzzy, python-format msgid "" "Some work has been done to make integers and long integers a bit more " "interchangeable. In 1.5.2, large-file support was added for Solaris, to " @@ -879,8 +1472,24 @@ msgid "" "``%`` operator (``%d``, ``%i``, ``%x``, etc.). For example, ``\"%d\" % " "2L**64`` will produce the string ``18446744073709551616``." msgstr "" +"Se ha trabajado para que los enteros y los enteros largos sean un poco más " +"intercambiables. En la versión 1.5.2, se añadió soporte para archivos " +"grandes en Solaris, para permitir la lectura de archivos de más de 2 GiB; " +"esto hizo que el método :meth:`tell` de los objetos de archivo devolviera un " +"entero largo en lugar de un entero normal. Algunos códigos restaban dos " +"desplazamientos de archivos e intentaban utilizar el resultado para " +"multiplicar una secuencia o cortar una cadena, pero esto generaba un :exc:" +"`TypeError`. En la versión 2.0, los enteros largos pueden utilizarse para " +"multiplicar o cortar una secuencia, y se comportarán como se espera " +"intuitivamente; ``3L * 'abc'`` produce 'abcabcabc', y ``(0,1,2,3)[2L:4L]`` " +"produce (2,3). Los enteros largos también pueden utilizarse en varios " +"contextos en los que antes sólo se aceptaban enteros, como en el método :" +"meth:`seek` de los objetos de archivo, y en los formatos soportados por el " +"operador ``%`` (``%d``, ``%i``, ``%x``, etc.). Por ejemplo, ``\"%d\" % " +"2L**64`` producirá la cadena ``18446744073709551616``." #: ../Doc/whatsnew/2.0.rst:708 +#, fuzzy msgid "" "The subtlest long integer change of all is that the :func:`str` of a long " "integer no longer has a trailing 'L' character, though :func:`repr` still " @@ -890,9 +1499,16 @@ msgid "" "which does ``str(longval)[:-1]`` and assumes the 'L' is there, will now lose " "the final digit." msgstr "" +"El cambio más sutil de los enteros largos es que el :func:`str` de un entero " +"largo ya no tiene un carácter 'L' al final, aunque :func:`repr` todavía lo " +"incluye. La 'L' molestaba a muchas personas que querían imprimir enteros " +"largos con el mismo aspecto que los enteros normales, ya que tenían que " +"esforzarse por cortar el carácter. Esto ya no es un problema en 2.0, pero " +"el código que hace ``str(longval)[:-1]`` y asume que la 'L' está ahí, ahora " +"perderá el dígito final." #: ../Doc/whatsnew/2.0.rst:716 -#, python-format +#, fuzzy, python-format msgid "" "Taking the :func:`repr` of a float now uses a different formatting precision " "than :func:`str`. :func:`repr` uses ``%.17g`` format string for C's :func:" @@ -902,8 +1518,17 @@ msgid "" "in binary, so ``repr(8.1)`` is ``'8.0999999999999996'``, while str(8.1) is " "``'8.1'``." msgstr "" +"Tomar el :func:`repr` de un flotador utiliza ahora una precisión de formato " +"diferente a la de :func:`str`. :func:`repr` utiliza la cadena de formato ``" +"%.17g`` para el :func:`sprintf` de C, mientras que :func:`str` utiliza ``" +"%.12g`` como antes. El efecto es que :func:`repr` puede mostrar " +"ocasionalmente más decimales que :func:`str`, para ciertos números. Por " +"ejemplo, el número 8,1 no puede representarse exactamente en binario, por lo " +"que ``repr(8,1)`` es ``'8,09999999999996'``, mientras que str(8,1) es " +"``'8,1'``." #: ../Doc/whatsnew/2.0.rst:724 +#, fuzzy msgid "" "The ``-X`` command-line option, which turned all standard exceptions into " "strings instead of classes, has been removed; the standard exceptions will " @@ -911,20 +1536,32 @@ msgid "" "exceptions was translated from Python to a built-in C module, written by " "Barry Warsaw and Fredrik Lundh." msgstr "" +"La opción de línea de comandos ``-X``, que convertía todas las excepciones " +"estándar en cadenas en lugar de clases, ha sido eliminada; las excepciones " +"estándar serán ahora siempre clases. El módulo :mod:`exceptions` que " +"contiene las excepciones estándar ha sido traducido de Python a un módulo C " +"integrado, escrito por Barry Warsaw y Fredrik Lundh." #: ../Doc/whatsnew/2.0.rst:740 +#, fuzzy msgid "Extending/Embedding Changes" -msgstr "" +msgstr "Ampliación/Incorporación de cambios" #: ../Doc/whatsnew/2.0.rst:742 +#, fuzzy msgid "" "Some of the changes are under the covers, and will only be apparent to " "people writing C extension modules or embedding a Python interpreter in a " "larger application. If you aren't dealing with Python's C API, you can " "safely skip this section." msgstr "" +"Algunos de los cambios están bajo la cubierta, y sólo serán evidentes para " +"la gente que escribe módulos de extensión de C o que incrusta un intérprete " +"de Python en una aplicación más grande. Si no estás tratando con la API de " +"C de Python, puedes saltarte esta sección." #: ../Doc/whatsnew/2.0.rst:747 +#, fuzzy msgid "" "The version number of the Python C API was incremented, so C extensions " "compiled for 1.5.2 must be recompiled in order to work with 2.0. On " @@ -932,8 +1569,15 @@ msgid "" "built for Python 1.5.x due to how Windows DLLs work, so Python will raise an " "exception and the import will fail." msgstr "" +"El número de versión de la API C de Python se incrementó, por lo que las " +"extensiones C compiladas para 1.5.2 deben ser recompiladas para que " +"funcionen con 2.0. En Windows, no es posible que Python 2.0 importe una " +"extensión de terceros construida para Python 1.5.x debido a cómo funcionan " +"las DLL de Windows, por lo que Python lanzará una excepción y la importación " +"fallará." #: ../Doc/whatsnew/2.0.rst:753 +#, fuzzy msgid "" "Users of Jim Fulton's ExtensionClass module will be pleased to find out that " "hooks have been added so that ExtensionClasses are now supported by :func:" @@ -941,8 +1585,15 @@ msgid "" "remember to write code such as ``if type(obj) == myExtensionClass``, but can " "use the more natural ``if isinstance(obj, myExtensionClass)``." msgstr "" +"Los usuarios del módulo ExtensionClass de Jim Fulton estarán encantados de " +"saber que se han añadido ganchos para que las ExtensionClasses sean ahora " +"compatibles con :func:`isinstance` y :func:`issubclass`. Esto significa que " +"ya no tiene que recordar escribir código como ``if type(obj) == " +"myExtensionClass``, sino que puede utilizar el más natural ``if " +"isinstance(obj, myExtensionClass)``." #: ../Doc/whatsnew/2.0.rst:759 +#, fuzzy msgid "" "The :file:`Python/importdl.c` file, which was a mass of #ifdefs to support " "dynamic loading on many different platforms, was cleaned up and reorganised " @@ -952,8 +1603,17 @@ msgid "" "Include/ directory that held various portability hacks; they've been merged " "into a single file, :file:`Include/pyport.h`." msgstr "" +"El archivo :file:`Python/importdl.c`, que era una masa de #ifdefs para " +"soportar la carga dinámica en muchas plataformas diferentes, fue limpiado y " +"reorganizado por Greg Stein. :file:`importdl.c` es ahora bastante pequeño, y " +"el código específico de la plataforma se ha movido a un montón de archivos :" +"file:`Python/dynload_\\*.c`. Otra limpieza: también había una serie de " +"archivos :file:`my\\*.h` en el directorio Include/ que contenían varios " +"hacks de portabilidad; se han fusionado en un único archivo, :file:`Include/" +"pyport.h`." #: ../Doc/whatsnew/2.0.rst:767 +#, fuzzy msgid "" "Vladimir Marangozov's long-awaited malloc restructuring was completed, to " "make it easy to have the Python interpreter use a custom allocator instead " @@ -962,16 +1622,29 @@ msgid "" "discussions during which the interface was hammered out, see the Web " "archives of the 'patches' and 'python-dev' lists at python.org." msgstr "" +"Se ha completado la tan esperada reestructuración de malloc de Vladimir " +"Marangozov, para facilitar que el intérprete de Python utilice un asignador " +"personalizado en lugar del estándar de C :func:`malloc`. Para la " +"documentación, lea los comentarios en :file:`Include/pymem.h` y :file:" +"`Include/objimpl.h`. Para ver las largas discusiones durante las cuales se " +"elaboró la interfaz, consulte los archivos web de las listas 'patches' y " +"'python-dev' en python.org." #: ../Doc/whatsnew/2.0.rst:774 +#, fuzzy msgid "" "Recent versions of the GUSI development environment for MacOS support POSIX " "threads. Therefore, Python's POSIX threading support now works on the " "Macintosh. Threading support using the user-space GNU ``pth`` library was " "also contributed." msgstr "" +"Las versiones recientes del entorno de desarrollo GUSI para MacOS soportan " +"hilos POSIX. Por lo tanto, el soporte de hilos POSIX de Python ahora " +"funciona en Macintosh. También se ha contribuido al soporte de hilos " +"utilizando la biblioteca GNU ``pth`` del espacio de usuario." #: ../Doc/whatsnew/2.0.rst:779 +#, fuzzy msgid "" "Threading support on Windows was enhanced, too. Windows supports thread " "locks that use kernel objects only in case of contention; in the common case " @@ -980,15 +1653,27 @@ msgid "" "as an unthreaded version; with the 2.0 changes, the difference is only 10%. " "These improvements were contributed by Yakov Markovitch." msgstr "" +"También se ha mejorado el soporte de hilos en Windows. Windows soporta " +"bloqueos de hilos que utilizan objetos del núcleo sólo en caso de " +"contención; en el caso común cuando no hay contención, utilizan funciones " +"más simples que son un orden de magnitud más rápido. Una versión con hilos " +"de Python 1.5.2 en NT es dos veces más lenta que una versión sin hilos; con " +"los cambios de la 2.0, la diferencia es sólo del 10%. Estas mejoras fueron " +"aportadas por Yakov Markovitch." #: ../Doc/whatsnew/2.0.rst:786 +#, fuzzy msgid "" "Python 2.0's source now uses only ANSI C prototypes, so compiling Python now " "requires an ANSI C compiler, and can no longer be done using a compiler that " "only supports K&R C." msgstr "" +"El código fuente de Python 2.0 ahora sólo utiliza prototipos ANSI C, por lo " +"que la compilación de Python ahora requiere un compilador ANSI C, y ya no " +"puede hacerse utilizando un compilador que sólo soporte K&R C." #: ../Doc/whatsnew/2.0.rst:790 +#, fuzzy msgid "" "Previously the Python virtual machine used 16-bit numbers in its bytecode, " "limiting the size of source files. In particular, this affected the maximum " @@ -996,8 +1681,15 @@ msgid "" "who are generating Python code would run into this limit. A patch by " "Charles G. Waldman raises the limit from ``2^16`` to ``2^{32}``." msgstr "" +"Anteriormente, la máquina virtual de Python utilizaba números de 16 bits en " +"su bytecode, lo que limitaba el tamaño de los archivos fuente. En " +"particular, esto afectaba al tamaño máximo de las listas literales y los " +"diccionarios en el código fuente de Python; ocasionalmente, las personas que " +"generan código Python se encontraban con este límite. Un parche de Charles " +"G. Waldman eleva el límite de ``2^16`` a ``2^{32}``." #: ../Doc/whatsnew/2.0.rst:796 +#, fuzzy msgid "" "Three new convenience functions intended for adding constants to a module's " "dictionary at module initialization time were added: :func:" @@ -1007,18 +1699,31 @@ msgid "" "third argument for the value to be assigned to the name. This third " "argument is, respectively, a Python object, a C long, or a C string." msgstr "" +"Se han añadido tres nuevas funciones para añadir constantes al diccionario " +"de un módulo en el momento de la inicialización: :func:" +"`PyModule_AddObject`, :func:`PyModule_AddIntConstant`, y :func:" +"`PyModule_AddStringConstant`. Cada una de estas funciones toma un objeto de " +"módulo, una cadena C terminada en cero que contiene el nombre a añadir, y un " +"tercer argumento para el valor a asignar al nombre. Este tercer argumento " +"es, respectivamente, un objeto Python, un C long o una cadena C." #: ../Doc/whatsnew/2.0.rst:804 +#, fuzzy msgid "" "A wrapper API was added for Unix-style signal handlers. :func:`PyOS_getsig` " "gets a signal handler and :func:`PyOS_setsig` will set a new handler." msgstr "" +"Se ha añadido una API envolvente para los manejadores de señales de estilo " +"Unix. :func:`PyOS_getsig` obtiene un manejador de señales y :func:" +"`PyOS_setsig` establecerá un nuevo manejador." #: ../Doc/whatsnew/2.0.rst:811 +#, fuzzy msgid "Distutils: Making Modules Easy to Install" -msgstr "" +msgstr "Distutils: Facilitar la instalación de módulos" #: ../Doc/whatsnew/2.0.rst:813 +#, fuzzy msgid "" "Before Python 2.0, installing modules was a tedious affair -- there was no " "way to figure out automatically where Python is installed, or what compiler " @@ -1029,8 +1734,18 @@ msgid "" "different extension packages, which made administering a Python installation " "something of a chore." msgstr "" +"Antes de Python 2.0, la instalación de módulos era un asunto tedioso -- no " +"había forma de averiguar automáticamente dónde se instalaba Python, o qué " +"opciones del compilador se debían usar para los módulos de extensión. Los " +"autores de software tenían que pasar por un arduo ritual de edición de " +"Makefiles y archivos de configuración, que sólo funcionaban realmente en " +"Unix y dejaban sin soporte a Windows y MacOS. Los usuarios de Python se " +"enfrentaban a instrucciones de instalación muy diferentes que variaban entre " +"los distintos paquetes de extensión, lo que hacía que la administración de " +"una instalación de Python fuera una tarea ardua." #: ../Doc/whatsnew/2.0.rst:821 +#, fuzzy msgid "" "The SIG for distribution utilities, shepherded by Greg Ward, has created the " "Distutils, a system to make package installation much easier. They form " @@ -1045,27 +1760,51 @@ msgid "" "separating the build from the install, building or installing in non-default " "directories, and more." msgstr "" +"El SIG de utilidades de distribución, liderado por Greg Ward, ha creado las " +"Distutils, un sistema para facilitar la instalación de paquetes. Forman el " +"paquete :mod:`distutils`, una nueva parte de la biblioteca estándar de " +"Python. En el mejor de los casos, la instalación de un módulo de Python " +"desde el código fuente requerirá los mismos pasos: primero simplemente hay " +"que desempaquetar el archivo tar o zip, y ejecutar \"``python setup.py " +"install``. La plataforma será detectada automáticamente, el compilador será " +"reconocido, los módulos de extensión C serán compilados, y la distribución " +"será instalada en el directorio apropiado. Los argumentos opcionales de la " +"línea de comandos proporcionan más control sobre el proceso de instalación, " +"el paquete distutils ofrece muchos lugares para anular los valores " +"predeterminados - separando la construcción de la instalación, construyendo " +"o instalando en directorios no predeterminados, y más." #: ../Doc/whatsnew/2.0.rst:833 +#, fuzzy msgid "" "In order to use the Distutils, you need to write a :file:`setup.py` script. " "For the simple case, when the software contains only .py files, a minimal :" "file:`setup.py` can be just a few lines long::" msgstr "" +"Para usar las Distutils, necesitas escribir un script :file:`setup.py`. " +"Para el caso simple, cuando el software contiene sólo archivos .py, un :file:" +"`setup.py` mínimo puede tener sólo unas pocas líneas::" #: ../Doc/whatsnew/2.0.rst:841 +#, fuzzy msgid "" "The :file:`setup.py` file isn't much more complicated if the software " "consists of a few packages::" msgstr "" +"El archivo :file:`setup.py` no es mucho más complicado si el software consta " +"de unos pocos paquetes::" #: ../Doc/whatsnew/2.0.rst:848 +#, fuzzy msgid "" "A C extension can be the most complicated case; here's an example taken from " "the PyXML package::" msgstr "" +"Una extensión en C puede ser el caso más complicado; he aquí un ejemplo " +"tomado del paquete PyXML::" #: ../Doc/whatsnew/2.0.rst:864 +#, fuzzy msgid "" "The Distutils can also take care of creating source and binary " "distributions. The \"sdist\" command, run by \"``python setup.py sdist``', " @@ -1076,18 +1815,31 @@ msgid "" "distribution formats such as Debian packages and Solaris :file:`.pkg` files " "are in various stages of development." msgstr "" +"Las Distutils también pueden encargarse de crear distribuciones fuente y " +"binarias. El comando \"sdist\", ejecutado por \"``python setup.py sdist``, " +"construye una distribución fuente como :file:`foo-1.0.tar.gz`. Añadir nuevos " +"comandos no es difícil, ya se han aportado los comandos \"bdist_rpm\" y " +"\"bdist_wininst\" para crear una distribución RPM y un instalador de Windows " +"para el software, respectivamente. Los comandos para crear otros formatos " +"de distribución, como los paquetes de Debian y los archivos :file:`.pkg` de " +"Solaris, se encuentran en diversas etapas de desarrollo." #: ../Doc/whatsnew/2.0.rst:873 +#, fuzzy msgid "" "All this is documented in a new manual, *Distributing Python Modules*, that " "joins the basic set of Python documentation." msgstr "" +"Todo esto está documentado en un nuevo manual, *Distribución de módulos de " +"Python*, que se une al conjunto básico de documentación de Python." #: ../Doc/whatsnew/2.0.rst:880 +#, fuzzy msgid "XML Modules" -msgstr "" +msgstr "Módulos XML" #: ../Doc/whatsnew/2.0.rst:882 +#, fuzzy msgid "" "Python 1.5.2 included a simple XML parser in the form of the :mod:`xmllib` " "module, contributed by Sjoerd Mullender. Since 1.5.2's release, two " @@ -1101,12 +1853,26 @@ msgid "" "documentation or the source code for complete details. The Python XML SIG is " "also working on improved documentation." msgstr "" +"La versión 1.5.2 de Python incluía un sencillo analizador XML en forma de " +"módulo :mod:`xmllib`, aportado por Sjoerd Mullender. Desde el lanzamiento " +"de la versión 1.5.2, se han generalizado dos interfaces diferentes para el " +"procesamiento de XML: SAX2 (versión 2 de la API Simple para XML) proporciona " +"una interfaz basada en eventos con algunas similitudes con :mod:`xmllib`, y " +"el DOM (Modelo de Objetos de Documento) proporciona una interfaz basada en " +"un árbol, transformando un documento XML en un árbol de nodos que puede ser " +"atravesado y modificado. Python 2.0 incluye una interfaz SAX2 y una " +"interfaz DOM reducida como parte del paquete :mod:`xml`. Aquí daremos una " +"breve descripción de estas nuevas interfaces; consulte la documentación de " +"Python o el código fuente para obtener detalles completos. El SIG XML de " +"Python también está trabajando en la mejora de la documentación." #: ../Doc/whatsnew/2.0.rst:896 +#, fuzzy msgid "SAX2 Support" -msgstr "" +msgstr "Soporte de SAX2" #: ../Doc/whatsnew/2.0.rst:898 +#, fuzzy msgid "" "SAX defines an event-driven interface for parsing XML. To use SAX, you must " "write a SAX handler class. Handler classes inherit from various classes " @@ -1116,8 +1882,16 @@ msgid "" "by the parser, the :meth:`characters` method is called for every chunk of " "character data, and so forth." msgstr "" +"SAX define una interfaz basada en eventos para analizar XML. Para usar SAX, " +"debes escribir una clase manejadora de SAX. Las clases manejadoras heredan " +"de varias clases proporcionadas por SAX, y sobrescriben varios métodos que " +"luego serán llamados por el analizador XML. Por ejemplo, los métodos :meth:" +"`startElement` y :meth:`endElement` son llamados para cada etiqueta inicial " +"y final encontrada por el analizador, el método :meth:`characters` es " +"llamado para cada trozo de datos de caracteres, etc." #: ../Doc/whatsnew/2.0.rst:906 +#, fuzzy msgid "" "The advantage of the event-driven approach is that the whole document " "doesn't have to be resident in memory at any one time, which matters if you " @@ -1125,25 +1899,39 @@ msgid "" "class can get very complicated if you're trying to modify the document " "structure in some elaborate way." msgstr "" +"La ventaja del enfoque basado en eventos es que todo el documento no tiene " +"que residir en la memoria en un momento dado, lo cual es importante si estás " +"procesando documentos realmente enormes. Sin embargo, escribir la clase " +"manejadora de SAX puede ser muy complicado si se intenta modificar la " +"estructura del documento de alguna manera elaborada." #: ../Doc/whatsnew/2.0.rst:912 +#, fuzzy msgid "" "For example, this little example program defines a handler that prints a " "message for every starting and ending tag, and then parses the file :file:" "`hamlet.xml` using it::" msgstr "" +"Por ejemplo, este pequeño programa de ejemplo define un manejador que " +"imprime un mensaje para cada etiqueta inicial y final, y luego analiza el " +"archivo :file:`hamlet.xml` usándolo::" #: ../Doc/whatsnew/2.0.rst:935 +#, fuzzy msgid "" "For more information, consult the Python documentation, or the XML HOWTO at " "http://pyxml.sourceforge.net/topics/howto/xml-howto.html." msgstr "" +"Para más información, consulte la documentación de Python o el XML HOWTO en " +"http://pyxml.sourceforge.net/topics/howto/xml-howto.html." #: ../Doc/whatsnew/2.0.rst:940 +#, fuzzy msgid "DOM Support" -msgstr "" +msgstr "Soporte DOM" #: ../Doc/whatsnew/2.0.rst:942 +#, fuzzy msgid "" "The Document Object Model is a tree-based representation for an XML " "document. A top-level :class:`Document` instance is the root of the tree, " @@ -1154,8 +1942,18 @@ msgid "" "element and attribute values, insert and delete nodes, and convert the tree " "back into XML." msgstr "" +"El Modelo de Objetos del Documento es una representación basada en un árbol " +"para un documento XML. Una instancia de :class:`Document` de nivel superior " +"es la raíz del árbol, y tiene un único hijo que es la instancia de :class:" +"`Element` de nivel superior. Este :class:`Element` tiene nodos hijos que " +"representan los datos de los caracteres y cualquier subelemento, que puede " +"tener otros hijos propios, y así sucesivamente. Utilizando el DOM puedes " +"recorrer el árbol resultante como quieras, acceder a los valores de los " +"elementos y atributos, insertar y eliminar nodos y volver a convertir el " +"árbol en XML." #: ../Doc/whatsnew/2.0.rst:950 +#, fuzzy msgid "" "The DOM is useful for modifying XML documents, because you can create a DOM " "tree, modify it by adding new nodes or rearranging subtrees, and then " @@ -1164,16 +1962,28 @@ msgid "" "producing XML output than simply writing ````...\\ ```` to a " "file." msgstr "" +"El DOM es útil para modificar documentos XML, porque se puede crear un árbol " +"DOM, modificarlo añadiendo nuevos nodos o reordenando subárboles, y luego " +"producir un nuevo documento XML como salida. También se puede construir un " +"árbol DOM manualmente y convertirlo en XML, lo que puede ser una forma más " +"flexible de producir una salida XML que simplemente escribir````..." +"\\Nen un archivo." #: ../Doc/whatsnew/2.0.rst:956 +#, fuzzy msgid "" "The DOM implementation included with Python lives in the :mod:`xml.dom." "minidom` module. It's a lightweight implementation of the Level 1 DOM with " "support for XML namespaces. The :func:`parse` and :func:`parseString` " "convenience functions are provided for generating a DOM tree::" msgstr "" +"La implementación del DOM incluida en Python se encuentra en el módulo :mod:" +"`xml.dom.minidom`. Es una implementación ligera del DOM de nivel 1 con " +"soporte para espacios de nombres XML. Las funciones :func:`parse` y :func:" +"`parseString` se proporcionan para generar un árbol DOM::" #: ../Doc/whatsnew/2.0.rst:964 +#, fuzzy msgid "" "``doc`` is a :class:`Document` instance. :class:`Document`, like all the " "other DOM classes such as :class:`Element` and :class:`Text`, is a subclass " @@ -1184,29 +1994,49 @@ msgid "" "class:`Document` instances have a method to find all child elements with a " "given tag name. Continuing from the previous 2-line example::" msgstr "" +"El :class:`Document` es una instancia de :class:`Document`. El :class:" +"`Document`, al igual que el resto de clases del DOM como el :class:`Element` " +"y el :class:`Text`, es una subclase de la clase base :class:`Node`. Por lo " +"tanto, todos los nodos de un árbol DOM soportan ciertos métodos comunes, " +"como :meth:`toxml` que devuelve una cadena que contiene la representación " +"XML del nodo y sus hijos. Cada clase también tiene métodos especiales " +"propios; por ejemplo, las instancias :class:`Element` y :class:`Document` " +"tienen un método para encontrar todos los elementos hijos con un nombre de " +"etiqueta dado. Continuando con el ejemplo anterior de 2 líneas::" #: ../Doc/whatsnew/2.0.rst:977 +#, fuzzy msgid "For the *Hamlet* XML file, the above few lines output::" msgstr "" +"Para el archivo XML *Hamlet*, las líneas anteriores dan como resultado::" #: ../Doc/whatsnew/2.0.rst:982 +#, fuzzy msgid "" "The root element of the document is available as ``doc.documentElement``, " "and its children can be easily modified by deleting, adding, or removing " "nodes::" msgstr "" +"El elemento raíz del documento está disponible como ``doc.documentElement``, " +"y sus hijos pueden modificarse fácilmente borrando, añadiendo o eliminando " +"nodos::" #: ../Doc/whatsnew/2.0.rst:997 +#, fuzzy msgid "" "Again, I will refer you to the Python documentation for a complete listing " "of the different :class:`Node` classes and their various methods." msgstr "" +"Una vez más, te remito a la documentación de Python para obtener una lista " +"completa de las diferentes clases :class:`Node` y sus diversos métodos." #: ../Doc/whatsnew/2.0.rst:1002 +#, fuzzy msgid "Relationship to PyXML" -msgstr "" +msgstr "Relación con PyXML" #: ../Doc/whatsnew/2.0.rst:1004 +#, fuzzy msgid "" "The XML Special Interest Group has been working on XML-related Python code " "for a while. Its code distribution, called PyXML, is available from the " @@ -1215,8 +2045,15 @@ msgid "" "written programs that used PyXML, you're probably wondering about its " "compatibility with the 2.0 :mod:`xml` package." msgstr "" +"El Grupo de Interés Especial XML lleva un tiempo trabajando en código Python " +"relacionado con XML. Su distribución de código, llamada PyXML, está " +"disponible en las páginas web del SIG en https://www.python.org/community/" +"sigs/current/xml-sig. La distribución de PyXML también utiliza el nombre de " +"paquete ``xml``. Si has escrito programas que utilizan PyXML, probablemente " +"te preguntes sobre su compatibilidad con el paquete 2.0 :mod:`xml`." #: ../Doc/whatsnew/2.0.rst:1010 +#, fuzzy msgid "" "The answer is that Python 2.0's :mod:`xml` package isn't compatible with " "PyXML, but can be made compatible by installing a recent version PyXML. " @@ -1227,24 +2064,39 @@ msgid "" "a strict superset of the standard package, adding a bunch of additional " "features. Some of the additional features in PyXML include:" msgstr "" +"La respuesta es que el paquete :mod:`xml` de Python 2.0 no es compatible con " +"PyXML, pero puede hacerse compatible instalando una versión reciente de " +"PyXML. Muchas aplicaciones pueden arreglárselas con el soporte XML que se " +"incluye en Python 2.0, pero las aplicaciones más complicadas requerirán que " +"se instale el paquete PyXML completo. Cuando se instala, las versiones " +"0.6.0 o superiores de PyXML sustituyen al paquete :mod:`xml` que se entrega " +"con Python, y son un estricto superconjunto del paquete estándar, añadiendo " +"un montón de características adicionales. Algunas de las características " +"adicionales de PyXML incluyen:" #: ../Doc/whatsnew/2.0.rst:1019 +#, fuzzy msgid "4DOM, a full DOM implementation from FourThought, Inc." -msgstr "" +msgstr "4DOM, una implementación completa de DOM de FourThought, Inc." #: ../Doc/whatsnew/2.0.rst:1021 +#, fuzzy msgid "The xmlproc validating parser, written by Lars Marius Garshol." -msgstr "" +msgstr "El parser de validación xmlproc, escrito por Lars Marius Garshol." #: ../Doc/whatsnew/2.0.rst:1023 +#, fuzzy msgid "The :mod:`sgmlop` parser accelerator module, written by Fredrik Lundh." msgstr "" +"El módulo acelerador del parser :mod:`sgmlop`, escrito por Fredrik Lundh." #: ../Doc/whatsnew/2.0.rst:1029 +#, fuzzy msgid "Module changes" -msgstr "" +msgstr "Cambios en los módulos" #: ../Doc/whatsnew/2.0.rst:1031 +#, fuzzy msgid "" "Lots of improvements and bugfixes were made to Python's extensive standard " "library; some of the affected modules include :mod:`readline`, :mod:" @@ -1253,8 +2105,15 @@ msgid "" "and :mod:`nntplib`. Consult the CVS logs for the exact patch-by-patch " "details." msgstr "" +"Se han realizado muchas mejoras y correcciones de errores en la extensa " +"biblioteca estándar de Python; algunos de los módulos afectados son :mod:" +"`readline`, :mod:`ConfigParser`, :mod:`cgi`, :mod:`calendar`, :mod:`posix`, :" +"mod:`readline`, :mod:`xmllib`, :mod:`aifc`, :mod:`chunk, wave`, :mod:" +"`random`, :mod:`shelve`, y :mod:`nntplib`. Consulte los registros de CVS " +"para conocer los detalles exactos parche por parche." #: ../Doc/whatsnew/2.0.rst:1037 +#, fuzzy msgid "" "Brian Gallew contributed OpenSSL support for the :mod:`socket` module. " "OpenSSL is an implementation of the Secure Socket Layer, which encrypts the " @@ -1265,16 +2124,32 @@ msgid "" "mod:`urllib` modules were also changed to support ``https://`` URLs, though " "no one has implemented FTP or SMTP over SSL." msgstr "" +"Brian Gallew ha contribuido al soporte de OpenSSL para el módulo :mod:" +"`socket`. OpenSSL es una implementación de Secure Socket Layer, que " +"encripta los datos que se envían a través de un socket. Al compilar Python, " +"puedes editar :file:`Modules/Setup` para incluir el soporte de SSL, que " +"añade una función adicional al módulo :mod:`socket`: ``socket.ssl(socket, " +"keyfile, certfile)``, que toma un objeto socket y devuelve un socket SSL. " +"Los módulos :mod:`httplib` y :mod:`urllib` también han sido modificados para " +"soportar URLs ``https://``, aunque nadie ha implementado FTP o SMTP sobre " +"SSL." #: ../Doc/whatsnew/2.0.rst:1046 +#, fuzzy msgid "" "The :mod:`httplib` module has been rewritten by Greg Stein to support " "HTTP/1.1. Backward compatibility with the 1.5 version of :mod:`httplib` is " "provided, though using HTTP/1.1 features such as pipelining will require " "rewriting code to use a different set of interfaces." msgstr "" +"El módulo :mod:`httplib` ha sido reescrito por Greg Stein para soportar " +"HTTP/1.1. Se proporciona compatibilidad con la versión 1.5 de :mod:" +"`httplib`, aunque el uso de las características de HTTP/1.1, como el " +"pipelining, requerirá reescribir el código para utilizar un conjunto " +"diferente de interfaces." #: ../Doc/whatsnew/2.0.rst:1051 +#, fuzzy msgid "" "The :mod:`Tkinter` module now supports Tcl/Tk version 8.1, 8.2, or 8.3, and " "support for the older 7.x versions has been dropped. The Tkinter module now " @@ -1282,8 +2157,15 @@ msgid "" "contributed an optimization which makes operations like ``create_line`` and " "``create_polygon`` much faster, especially when using lots of coordinates." msgstr "" +"El módulo :mod:`Tkinter` soporta ahora la versión 8.1, 8.2 o 8.3 de Tcl/Tk, " +"y se ha eliminado el soporte para las versiones 7.x más antiguas. El módulo " +"Tkinter ahora soporta la visualización de cadenas Unicode en los widgets Tk. " +"Además, Fredrik Lundh ha contribuido con una optimización que hace que " +"operaciones como ``create_line`` y ``create_polygon`` sean mucho más " +"rápidas, especialmente cuando se utilizan muchas coordenadas." #: ../Doc/whatsnew/2.0.rst:1057 +#, fuzzy msgid "" "The :mod:`curses` module has been greatly extended, starting from Oliver " "Andrich's enhanced version, to provide many additional functions from " @@ -1292,8 +2174,16 @@ msgid "" "operating systems that only have BSD curses, but there don't seem to be any " "currently maintained OSes that fall into this category." msgstr "" +"El módulo :mod:`curses` ha sido ampliado en gran medida, a partir de la " +"versión mejorada de Oliver Andrich, para proporcionar muchas funciones " +"adicionales de los curses ncurses y SYSV, como el color, el soporte de " +"conjuntos de caracteres alternativos, los pads y el soporte de ratón. Esto " +"significa que el módulo ya no es compatible con los sistemas operativos que " +"sólo tienen curses BSD, pero no parece haber ningún sistema operativo " +"actualmente mantenido que caiga en esta categoría." #: ../Doc/whatsnew/2.0.rst:1064 +#, fuzzy msgid "" "As mentioned in the earlier discussion of 2.0's Unicode support, the " "underlying implementation of the regular expressions provided by the :mod:" @@ -1301,19 +2191,31 @@ msgid "" "by Fredrik Lundh and partially funded by Hewlett Packard, supports matching " "against both 8-bit strings and Unicode strings." msgstr "" +"Como se mencionó en la discusión anterior sobre el soporte Unicode de la " +"2.0, la implementación subyacente de las expresiones regulares " +"proporcionadas por el módulo :mod:`re` ha sido cambiada. SRE, un nuevo " +"motor de expresiones regulares escrito por Fredrik Lundh y parcialmente " +"financiado por Hewlett Packard, soporta la comparación con cadenas de 8 bits " +"y cadenas Unicode." #: ../Doc/whatsnew/2.0.rst:1074 +#, fuzzy msgid "New modules" -msgstr "" +msgstr "Nuevos módulos" #: ../Doc/whatsnew/2.0.rst:1076 +#, fuzzy msgid "" "A number of new modules were added. We'll simply list them with brief " "descriptions; consult the 2.0 documentation for the details of a particular " "module." msgstr "" +"Se han añadido varios módulos nuevos. Nos limitaremos a enumerarlos con " +"breves descripciones; consulte la documentación de la versión 2.0 para " +"conocer los detalles de un módulo concreto." #: ../Doc/whatsnew/2.0.rst:1080 +#, fuzzy msgid "" ":mod:`atexit`: For registering functions to be called before the Python " "interpreter exits. Code that currently sets ``sys.exitfunc`` directly should " @@ -1321,21 +2223,34 @@ msgid "" "and calling :func:`atexit.register` with the function to be called on exit. " "(Contributed by Skip Montanaro.)" msgstr "" +":mod:`atexit`: Para registrar las funciones que serán llamadas antes de que " +"el intérprete de Python salga. El código que actualmente establece ``sys." +"exitfunc`` directamente debe cambiarse para usar el módulo :mod:`atexit` en " +"su lugar, importando :mod:`atexit` y llamando a :func:`atexit.register` con " +"la función a llamar al salir. (Contribución de Skip Montanaro)" #: ../Doc/whatsnew/2.0.rst:1086 +#, fuzzy msgid "" ":mod:`codecs`, :mod:`encodings`, :mod:`unicodedata`: Added as part of the " "new Unicode support." msgstr "" +":mod:`codecs`, :mod:`encodings`, :mod:`unicodedata`: Añadidos como parte " +"del nuevo soporte de Unicode." #: ../Doc/whatsnew/2.0.rst:1089 +#, fuzzy msgid "" ":mod:`filecmp`: Supersedes the old :mod:`cmp`, :mod:`cmpcache` and :mod:" "`dircmp` modules, which have now become deprecated. (Contributed by Gordon " "MacMillan and Moshe Zadka.)" msgstr "" +":mod:`filecmp`: Sustituye a los antiguos módulos :mod:`cmp`, :mod:`cmpcache` " +"y :mod:`dircmp`, que han quedado obsoletos. (Contribución de Gordon " +"MacMillan y Moshe Zadka)" #: ../Doc/whatsnew/2.0.rst:1093 +#, fuzzy msgid "" ":mod:`gettext`: This module provides internationalization (I18N) and " "localization (L10N) support for Python programs by providing an interface to " @@ -1343,15 +2258,25 @@ msgid "" "separate contributions by Martin von Löwis, Peter Funk, and James " "Henstridge.)" msgstr "" +":mod:`gettext`: Este módulo proporciona soporte de internacionalización " +"(I18N) y localización (L10N) para los programas de Python, proporcionando " +"una interfaz a la biblioteca de catálogo de mensajes GNU gettext. (Integrado " +"por Barry Warsaw, a partir de contribuciones separadas de Martin von Löwis, " +"Peter Funk y James Henstridge)" #: ../Doc/whatsnew/2.0.rst:1098 +#, fuzzy msgid "" ":mod:`linuxaudiodev`: Support for the :file:`/dev/audio` device on Linux, a " "twin to the existing :mod:`sunaudiodev` module. (Contributed by Peter Bosch, " "with fixes by Jeremy Hylton.)" msgstr "" +":mod:`linuxaudiodev`: Soporte para el dispositivo :file:`/dev/audio` en " +"Linux, un gemelo del módulo existente :mod:`sunaudiodev`. (Contribuido por " +"Peter Bosch, con correcciones de Jeremy Hylton)" #: ../Doc/whatsnew/2.0.rst:1102 +#, fuzzy msgid "" ":mod:`mmap`: An interface to memory-mapped files on both Windows and Unix. " "A file's contents can be mapped directly into memory, at which point it " @@ -1360,14 +2285,24 @@ msgid "" "the :mod:`re` module. (Contributed by Sam Rushing, with some extensions by A." "M. Kuchling.)" msgstr "" +":mod:`mmap`: Una interfaz para archivos mapeados en memoria tanto en Windows " +"como en Unix. El contenido de un fichero puede ser mapeado directamente en " +"memoria, en cuyo momento se comporta como una cadena mutable, por lo que su " +"contenido puede ser leído y modificado. Incluso pueden pasarse a funciones " +"que esperan cadenas ordinarias, como el módulo :mod:`re`. (Contribución de " +"Sam Rushing, con algunas extensiones de A.M. Kuchling)" #: ../Doc/whatsnew/2.0.rst:1108 +#, fuzzy msgid "" ":mod:`pyexpat`: An interface to the Expat XML parser. (Contributed by Paul " "Prescod.)" msgstr "" +":mod:`pyexpat`: Una interfaz para el analizador XML de Expat. (Contribuido " +"por Paul Prescod.)" #: ../Doc/whatsnew/2.0.rst:1111 +#, fuzzy msgid "" ":mod:`robotparser`: Parse a :file:`robots.txt` file, which is used for " "writing Web spiders that politely avoid certain areas of a Web site. The " @@ -1375,20 +2310,33 @@ msgid "" "rules from it, and can then answer questions about the fetchability of a " "given URL. (Contributed by Skip Montanaro.)" msgstr "" +":mod:`robotparser`: Analiza un archivo :file:`robots.txt`, que se utiliza " +"para escribir arañas web que evitan amablemente ciertas áreas de un sitio " +"web. El analizador acepta el contenido de un archivo :file:`robots.txt`, " +"construye un conjunto de reglas a partir de él y puede responder a preguntas " +"sobre la capacidad de búsqueda de una URL determinada. (Contribución de " +"Skip Montanaro)" #: ../Doc/whatsnew/2.0.rst:1117 +#, fuzzy msgid "" ":mod:`tabnanny`: A module/script to check Python source code for ambiguous " "indentation. (Contributed by Tim Peters.)" msgstr "" +":mod:`tabnanny`: Un módulo/script para comprobar el código fuente de Python " +"en busca de sangrías ambiguas. (Contribuido por Tim Peters.)" #: ../Doc/whatsnew/2.0.rst:1120 +#, fuzzy msgid "" ":mod:`UserString`: A base class useful for deriving objects that behave like " "strings." msgstr "" +":mod:`CadenaUser`: Una clase base útil para derivar objetos que se comportan " +"como cadenas." #: ../Doc/whatsnew/2.0.rst:1123 +#, fuzzy msgid "" ":mod:`webbrowser`: A module that provides a platform independent way to " "launch a web browser on a specific URL. For each platform, various browsers " @@ -1399,103 +2347,165 @@ msgid "" "file:`Tools/idle/BrowserControl.py`, and adapted for the standard library by " "Fred.)" msgstr "" +":mod:`webbrowser`: Un módulo que proporciona una forma independiente de la " +"plataforma para lanzar un navegador web en una URL específica. Para cada " +"plataforma, se prueban varios navegadores en un orden específico. El usuario " +"puede modificar el navegador que se lanza estableciendo la variable de " +"entorno *BROWSER*. (Originalmente inspirado por el parche de Eric S. " +"Raymond a :mod:`urllib` que añadía una funcionalidad similar, pero el módulo " +"final proviene de un código originalmente implementado por Fred Drake como :" +"file:`Tools/idle/BrowserControl.py`, y adaptado para la biblioteca estándar " +"por Fred)" #: ../Doc/whatsnew/2.0.rst:1132 +#, fuzzy msgid "" ":mod:`_winreg`: An interface to the Windows registry. :mod:`_winreg` is an " "adaptation of functions that have been part of PythonWin since 1995, but has " "now been added to the core distribution, and enhanced to support Unicode. :" "mod:`_winreg` was written by Bill Tutt and Mark Hammond." msgstr "" +":mod:`_winreg`: Una interfaz para el registro de Windows. :mod:`_winreg` es " +"una adaptación de las funciones que han formado parte de PythonWin desde " +"1995, pero ahora se ha añadido a la distribución principal, y se ha mejorado " +"para soportar Unicode. :mod:`_winreg` fue escrito por Bill Tutt y Mark " +"Hammond." #: ../Doc/whatsnew/2.0.rst:1137 +#, fuzzy msgid "" ":mod:`zipfile`: A module for reading and writing ZIP-format archives. These " "are archives produced by :program:`PKZIP` on DOS/Windows or :program:`zip` " "on Unix, not to be confused with :program:`gzip`\\ -format files (which are " "supported by the :mod:`gzip` module) (Contributed by James C. Ahlstrom.)" msgstr "" +":mod:`zipfile`: Un módulo para leer y escribir archivos con formato ZIP. Se " +"trata de archivos producidos por :program:`PKZIP` en DOS/Windows o :program:" +"`zip` en Unix, que no deben confundirse con los archivos con formato :" +"program:`gzip` (que son compatibles con el módulo :mod:`gzip`) (Contribución " +"de James C. Ahlstrom.)" #: ../Doc/whatsnew/2.0.rst:1142 +#, fuzzy msgid "" ":mod:`imputil`: A module that provides a simpler way for writing customized " "import hooks, in comparison to the existing :mod:`ihooks` module. " "(Implemented by Greg Stein, with much discussion on python-dev along the " "way.)" msgstr "" +":mod:`imputil`: Un módulo que proporciona una forma más sencilla de escribir " +"ganchos de importación personalizados, en comparación con el módulo :mod:" +"`ihooks` existente. (Implementado por Greg Stein, con mucha discusión en " +"python-dev a lo largo del camino)" #: ../Doc/whatsnew/2.0.rst:1150 +#, fuzzy msgid "IDLE Improvements" -msgstr "" +msgstr "Mejoras en IDLE" #: ../Doc/whatsnew/2.0.rst:1152 +#, fuzzy msgid "" "IDLE is the official Python cross-platform IDE, written using Tkinter. " "Python 2.0 includes IDLE 0.6, which adds a number of new features and " "improvements. A partial list:" msgstr "" +"IDLE es el IDE oficial de Python multiplataforma, escrito con Tkinter. " +"Python 2.0 incluye IDLE 0.6, que añade una serie de nuevas características y " +"mejoras. Una lista parcial:" #: ../Doc/whatsnew/2.0.rst:1156 +#, fuzzy msgid "" "UI improvements and optimizations, especially in the area of syntax " "highlighting and auto-indentation." msgstr "" +"Mejoras y optimizaciones de la interfaz de usuario, especialmente en el área " +"de resaltado de sintaxis y auto-indentación." #: ../Doc/whatsnew/2.0.rst:1159 +#, fuzzy msgid "" "The class browser now shows more information, such as the top level " "functions in a module." msgstr "" +"El navegador de clases muestra ahora más información, como las funciones de " +"nivel superior de un módulo." #: ../Doc/whatsnew/2.0.rst:1162 +#, fuzzy msgid "" "Tab width is now a user settable option. When opening an existing Python " "file, IDLE automatically detects the indentation conventions, and adapts." msgstr "" +"El ancho del tabulador es ahora una opción configurable por el usuario. Al " +"abrir un archivo Python existente, IDLE detecta automáticamente las " +"convenciones de sangría y se adapta." #: ../Doc/whatsnew/2.0.rst:1165 +#, fuzzy msgid "" "There is now support for calling browsers on various platforms, used to open " "the Python documentation in a browser." msgstr "" +"Ahora hay soporte para llamar a los navegadores en varias plataformas, " +"utilizado para abrir la documentación de Python en un navegador." #: ../Doc/whatsnew/2.0.rst:1168 +#, fuzzy msgid "" "IDLE now has a command line, which is largely similar to the vanilla Python " "interpreter." msgstr "" +"IDLE ahora tiene una línea de comandos, que es en gran medida similar al " +"intérprete de Python vainilla." #: ../Doc/whatsnew/2.0.rst:1171 +#, fuzzy msgid "Call tips were added in many places." -msgstr "" +msgstr "Se añadieron consejos de llamada en muchos lugares." #: ../Doc/whatsnew/2.0.rst:1173 +#, fuzzy msgid "IDLE can now be installed as a package." -msgstr "" +msgstr "Ahora IDLE puede instalarse como un paquete." #: ../Doc/whatsnew/2.0.rst:1175 +#, fuzzy msgid "In the editor window, there is now a line/column bar at the bottom." msgstr "" +"En la ventana del editor, ahora hay una barra de líneas/columnas en la parte " +"inferior." #: ../Doc/whatsnew/2.0.rst:1177 +#, fuzzy msgid "" "Three new keystroke commands: Check module (:kbd:`Alt-F5`), Import module (:" "kbd:`F5`) and Run script (:kbd:`Ctrl-F5`)." msgstr "" +"Tres nuevos comandos de teclado: Comprobar módulo (:kbd:`Alt-F5`), Importar " +"módulo (:kbd:`F5`) y Ejecutar script (:kbd:`Ctrl-F5`)." #: ../Doc/whatsnew/2.0.rst:1184 +#, fuzzy msgid "Deleted and Deprecated Modules" -msgstr "" +msgstr "Módulos eliminados y obsoletos" #: ../Doc/whatsnew/2.0.rst:1186 +#, fuzzy msgid "" "A few modules have been dropped because they're obsolete, or because there " "are now better ways to do the same thing. The :mod:`stdwin` module is gone; " "it was for a platform-independent windowing toolkit that's no longer " "developed." msgstr "" +"Se han eliminado algunos módulos porque son obsoletos, o porque ahora hay " +"mejores formas de hacer lo mismo. El módulo :mod:`stdwin` ha desaparecido; " +"era para un conjunto de herramientas de ventanas independientes de la " +"plataforma que ya no se desarrolla." #: ../Doc/whatsnew/2.0.rst:1190 +#, fuzzy msgid "" "A number of modules have been moved to the :file:`lib-old` subdirectory: :" "mod:`cmp`, :mod:`cmpcache`, :mod:`dircmp`, :mod:`dump`, :mod:`find`, :mod:" @@ -1504,12 +2514,21 @@ msgid "" "file:`lib-old`, you can simply add that directory to ``sys.path`` to get " "them back, but you're encouraged to update any code that uses these modules." msgstr "" +"Varios módulos han sido trasladados al subdirectorio :file:`lib-old`: :mod:" +"`cmp`, :mod:`cmpcache`, :mod:`dircmp`, :mod:`dump`, :mod:`find`, :mod:" +"`grep`, :mod:`packmail`, :mod:`poly`, :mod:`util`, :mod:`whatsound`, :mod:" +"`zmod`. Si tiene código que depende de un módulo que ha sido movido a :file:" +"`lib-old`, puede simplemente añadir ese directorio a ``sys.path`` para " +"recuperarlo, pero se recomienda actualizar cualquier código que utilice " +"estos módulos." #: ../Doc/whatsnew/2.0.rst:1199 +#, fuzzy msgid "Acknowledgements" -msgstr "" +msgstr "Agradecimientos" #: ../Doc/whatsnew/2.0.rst:1201 +#, fuzzy msgid "" "The authors would like to thank the following people for offering " "suggestions on various drafts of this article: David Bolen, Mark Hammond, " @@ -1517,3 +2536,8 @@ msgid "" "Skip Montanaro, Vladimir Marangozov, Tobias Polzin, Guido van Rossum, Neil " "Schemenauer, and Russ Schmidt." msgstr "" +"Los autores desean agradecer a las siguientes personas sus sugerencias sobre " +"varios borradores de este artículo: David Bolen, Mark Hammond, Gregg Hauser, " +"Jeremy Hylton, Fredrik Lundh, Detlef Lannert, Aahz Maruch, Skip Montanaro, " +"Vladimir Marangozov, Tobias Polzin, Guido van Rossum, Neil Schemenauer y " +"Russ Schmidt." From fc602775b862de7870e3ffeb9cb51a87d91fc15a Mon Sep 17 00:00:00 2001 From: Claudia Date: Thu, 5 Aug 2021 09:24:29 +0100 Subject: [PATCH 2/4] more advances --- whatsnew/2.0.po | 42 +++++------------------------------------- 1 file changed, 5 insertions(+), 37 deletions(-) diff --git a/whatsnew/2.0.po b/whatsnew/2.0.po index 2332c7d6b1..9fdfd42ea5 100644 --- a/whatsnew/2.0.po +++ b/whatsnew/2.0.po @@ -11,19 +11,18 @@ 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: 2021-08-04 08:53+0100\n" +"PO-Revision-Date: 2021-08-05 09:24+0100\n" "Language-Team: python-doc-es\n" "MIME-Version: 1.0\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: \n" +"Last-Translator: Claudia Millan \n" "Language: es\n" "X-Generator: Poedit 3.0\n" #: ../Doc/whatsnew/2.0.rst:3 -#, fuzzy msgid "What's New in Python 2.0" msgstr "Novedades de Python 2.0" @@ -32,7 +31,6 @@ msgid "Author" msgstr "Autor" #: ../Doc/whatsnew/2.0.rst:5 -#, fuzzy msgid "A.M. Kuchling and Moshe Zadka" msgstr "A.M. Kuchling y Moshe Zadka" @@ -41,7 +39,6 @@ msgid "Introduction" msgstr "Introducción" #: ../Doc/whatsnew/2.0.rst:15 -#, fuzzy msgid "" "A new release of Python, version 2.0, was released on October 16, 2000. This " "article covers the exciting new features in 2.0, highlights some other " @@ -54,7 +51,6 @@ msgstr "" "que pueden requerir reescribir el código." #: ../Doc/whatsnew/2.0.rst:20 -#, fuzzy msgid "" "Python's development never completely stops between releases, and a steady " "flow of bug fixes and improvements are always being submitted. A host of " @@ -77,12 +73,10 @@ msgstr "" "comunicación resultante del traslado a SourceForge." #: ../Doc/whatsnew/2.0.rst:33 -#, fuzzy msgid "What About Python 1.6?" msgstr "¿Qué pasa con Python 1.6?" #: ../Doc/whatsnew/2.0.rst:35 -#, fuzzy msgid "" "Python 1.6 can be thought of as the Contractual Obligations Python release. " "After the core development team left CNRI in May 2000, CNRI requested that a " @@ -104,7 +98,6 @@ msgstr "" "tanto, la 6 es parte de la evolución de Python, y no una rama lateral." #: ../Doc/whatsnew/2.0.rst:44 -#, fuzzy msgid "" "So, should you take much interest in Python 1.6? Probably not. The " "1.6final and 2.0beta1 releases were made on the same day (September 5, " @@ -126,12 +119,10 @@ msgstr "" "hizo mucho trabajo entre mayo y septiembre." #: ../Doc/whatsnew/2.0.rst:57 -#, fuzzy msgid "New Development Process" msgstr "Nuevo proceso de desarrollo" #: ../Doc/whatsnew/2.0.rst:59 -#, fuzzy msgid "" "The most important change in Python 2.0 may not be to the code at all, but " "to how Python is developed: in May 2000 the Python developers began using " @@ -151,7 +142,6 @@ msgstr "" "proyecto Python, situada en https://sourceforge.net/projects/python/." #: ../Doc/whatsnew/2.0.rst:66 -#, fuzzy msgid "" "The most important of the services now hosted at SourceForge is the Python " "CVS tree, the version-controlled repository containing the source code for " @@ -191,7 +181,6 @@ msgstr "" "realizado." #: ../Doc/whatsnew/2.0.rst:83 -#, fuzzy msgid "" "The shift to using SourceForge's services has resulted in a remarkable " "increase in the speed of development. Patches now get submitted, commented " @@ -220,7 +209,6 @@ msgstr "" "raspador de pantalla HTML que envía mensajes más útiles." #: ../Doc/whatsnew/2.0.rst:95 -#, fuzzy msgid "" "The ease of adding code caused a few initial growing pains, such as code was " "checked in before it was ready or without getting clear agreement from the " @@ -249,7 +237,6 @@ msgstr "" "la comunidad no esté de acuerdo con él." #: ../Doc/whatsnew/2.0.rst:106 -#, fuzzy msgid "" "Producing an actual patch is the last step in adding a new feature, and is " "usually easy compared to the earlier task of coming up with a good design. " @@ -275,7 +262,6 @@ msgstr "" "la introducción de :pep:`1`, \"PEP Purpose and Guidelines\":" #: ../Doc/whatsnew/2.0.rst:120 -#, fuzzy msgid "" "PEP stands for Python Enhancement Proposal. A PEP is a design document " "providing information to the Python community, or describing a new feature " @@ -289,7 +275,6 @@ msgstr "" "la misma." #: ../Doc/whatsnew/2.0.rst:125 -#, fuzzy msgid "" "We intend PEPs to be the primary mechanisms for proposing new features, for " "collecting community input on an issue, and for documenting the design " @@ -303,7 +288,6 @@ msgstr "" "comunidad y de documentar las opiniones discrepantes." #: ../Doc/whatsnew/2.0.rst:130 -#, fuzzy msgid "" "Read the rest of :pep:`1` for the details of the PEP editorial process, " "style, and format. PEPs are kept in the Python CVS tree on SourceForge, " @@ -320,12 +304,10 @@ msgstr "" "\"Lockstep Iteration\", hasta PEP 225, \"Elementwise/Objectwise Operators\"." #: ../Doc/whatsnew/2.0.rst:141 -#, fuzzy msgid "Unicode" msgstr "Unicode" #: ../Doc/whatsnew/2.0.rst:143 -#, fuzzy msgid "" "The largest new feature in Python 2.0 is a new fundamental data type: " "Unicode strings. Unicode uses 16-bit numbers to represent characters " @@ -338,7 +320,6 @@ msgstr "" "se pueden admitir 65.536 caracteres distintos." #: ../Doc/whatsnew/2.0.rst:148 -#, fuzzy msgid "" "The final interface for Unicode support was arrived at through countless " "often-stormy discussions on the python-dev mailing list, and mostly " @@ -356,7 +337,6 @@ msgstr "" "los puntos más significativos de las interfaces Unicode." #: ../Doc/whatsnew/2.0.rst:155 -#, fuzzy msgid "" "In Python source code, Unicode strings are written as ``u\"string\"``. " "Arbitrary Unicode characters can be written using a new escape sequence, ``" @@ -372,7 +352,6 @@ msgstr "" "escapes octales para caracteres hasta U+01FF, que se representa con ``777``." #: ../Doc/whatsnew/2.0.rst:161 -#, fuzzy msgid "" "Unicode strings, just like regular strings, are an immutable sequence type. " "They can be indexed and sliced, but not modified in place. Unicode strings " @@ -399,17 +378,15 @@ msgstr "" "py`." #: ../Doc/whatsnew/2.0.rst:172 -#, fuzzy msgid "" "Combining 8-bit and Unicode strings always coerces to Unicode, using the " "default ASCII encoding; the result of ``'a' + u'bc'`` is ``u'abc'``." msgstr "" -"La combinación de cadenas de 8 bits y Unicode siempre coacciona a Unicode, " -"utilizando la codificación ASCII por defecto; el resultado de ``'a' + " -"u'bc'`` es ``u'abc'``." +"La combinación de cadenas de 8 bits y Unicode siempre fuerza conversión a " +"Unicode, utilizando la codificación ASCII por defecto; el resultado de ``'a' " +"+ u'bc'`` es ``u'abc'``." #: ../Doc/whatsnew/2.0.rst:175 -#, fuzzy msgid "" "New built-in functions have been added, and existing built-ins modified to " "support Unicode:" @@ -418,7 +395,6 @@ msgstr "" "existentes para que sean compatibles con Unicode:" #: ../Doc/whatsnew/2.0.rst:178 -#, fuzzy msgid "" "``unichr(ch)`` returns a Unicode string 1 character long, containing the " "character *ch*." @@ -427,7 +403,6 @@ msgstr "" "carácter *ch*." #: ../Doc/whatsnew/2.0.rst:181 -#, fuzzy msgid "" "``ord(u)``, where *u* is a 1-character regular or Unicode string, returns " "the number of the character as an integer." @@ -1834,7 +1809,6 @@ msgstr "" "Python*, que se une al conjunto básico de documentación de Python." #: ../Doc/whatsnew/2.0.rst:880 -#, fuzzy msgid "XML Modules" msgstr "Módulos XML" @@ -2239,7 +2213,6 @@ msgstr "" "del nuevo soporte de Unicode." #: ../Doc/whatsnew/2.0.rst:1089 -#, fuzzy msgid "" ":mod:`filecmp`: Supersedes the old :mod:`cmp`, :mod:`cmpcache` and :mod:" "`dircmp` modules, which have now become deprecated. (Contributed by Gordon " @@ -2487,12 +2460,10 @@ msgstr "" "módulo (:kbd:`F5`) y Ejecutar script (:kbd:`Ctrl-F5`)." #: ../Doc/whatsnew/2.0.rst:1184 -#, fuzzy msgid "Deleted and Deprecated Modules" msgstr "Módulos eliminados y obsoletos" #: ../Doc/whatsnew/2.0.rst:1186 -#, fuzzy msgid "" "A few modules have been dropped because they're obsolete, or because there " "are now better ways to do the same thing. The :mod:`stdwin` module is gone; " @@ -2505,7 +2476,6 @@ msgstr "" "plataforma que ya no se desarrolla." #: ../Doc/whatsnew/2.0.rst:1190 -#, fuzzy msgid "" "A number of modules have been moved to the :file:`lib-old` subdirectory: :" "mod:`cmp`, :mod:`cmpcache`, :mod:`dircmp`, :mod:`dump`, :mod:`find`, :mod:" @@ -2523,12 +2493,10 @@ msgstr "" "estos módulos." #: ../Doc/whatsnew/2.0.rst:1199 -#, fuzzy msgid "Acknowledgements" msgstr "Agradecimientos" #: ../Doc/whatsnew/2.0.rst:1201 -#, fuzzy msgid "" "The authors would like to thank the following people for offering " "suggestions on various drafts of this article: David Bolen, Mark Hammond, " From c854a04d79b259cc7db91f17b36daab9668938b4 Mon Sep 17 00:00:00 2001 From: Claudia Date: Sat, 7 Aug 2021 09:52:55 +0100 Subject: [PATCH 3/4] before changing to another translation --- dictionaries/whatsnew_2.0.txt | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 dictionaries/whatsnew_2.0.txt diff --git a/dictionaries/whatsnew_2.0.txt b/dictionaries/whatsnew_2.0.txt new file mode 100644 index 0000000000..ebd3fdfab6 --- /dev/null +++ b/dictionaries/whatsnew_2.0.txt @@ -0,0 +1,2 @@ +Moshe +Zadka From 1b3c8d46ae689b9a2d889b27a9c92f6013e15fb0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cristi=C3=A1n=20Maureira-Fredes?= Date: Mon, 16 Aug 2021 20:41:58 +0200 Subject: [PATCH 4/4] Finalizando whatsnew/2.0 --- dictionaries/whatsnew_2.0.txt | 70 ++++ whatsnew/2.0.po | 749 ++++++++++++++-------------------- 2 files changed, 369 insertions(+), 450 deletions(-) diff --git a/dictionaries/whatsnew_2.0.txt b/dictionaries/whatsnew_2.0.txt index ebd3fdfab6..ccd36d3f9f 100644 --- a/dictionaries/whatsnew_2.0.txt +++ b/dictionaries/whatsnew_2.0.txt @@ -1,2 +1,72 @@ +Andrich +April +Bill +Bolen +Bosch +Elementwise +Enhancement +Fools +Fulton +Funk +Gallew +Garshol +Gregg +Guidelines +Hauser +Integration +Itanium +Iteration +Kamp +Kelsey +Labs +Lockstep +Marius +Markovitch +Maruch +Mick +Montanaro Moshe +Mullender +Objectwise +Oliver +Operators +Polzin +Proposal +Purpose +Rushing +Russ +Sam +Schmidt +Schneider +Secret +Sjoerd +Skip +Tiedemann +Tismer +Tobias +Toby +Trent +Tutt +Waldman +Ward +Yakov Zadka +codificándola +crucialmente +discrepantes +dyld +front +hacks +ifdefs +infórmelo +manejadora +patches +pipelining +recompiladas +rpm +sdist +subelemento +suffix +trashcan +wininst +xmlproc diff --git a/whatsnew/2.0.po b/whatsnew/2.0.po index 9fdfd42ea5..7d2715dfa1 100644 --- a/whatsnew/2.0.po +++ b/whatsnew/2.0.po @@ -67,10 +67,10 @@ msgstr "" "docstrings adicionales y mejores mensajes de error fueron incluidos en la " "versión 2.0; sería imposible enumerarlos todos, pero son ciertamente " "significativos. Consulte los registros CVS disponibles públicamente si desea " -"ver la lista completa. Este progreso se debe a que los cinco " -"desarrolladores que trabajan para PythonLabs reciben ahora una remuneración " -"por pasar sus días arreglando errores, y también a la mejora de la " -"comunicación resultante del traslado a SourceForge." +"ver la lista completa. Este progreso se debe a que los cinco desarrolladores " +"que trabajan para PythonLabs reciben ahora una remuneración por pasar sus " +"días arreglando errores, y también a la mejora de la comunicación resultante " +"del traslado a SourceForge." #: ../Doc/whatsnew/2.0.rst:33 msgid "What About Python 1.6?" @@ -90,33 +90,32 @@ msgstr "" "Python 1.6 puede considerarse como la versión de Python de las Obligaciones " "Contractuales. Después de que el equipo principal de desarrollo dejara el " "CNRI en mayo de 2000, el CNRI pidió que se creara una versión 1.6 que " -"contuviera todo el trabajo sobre Python que se había realizado en el CNRI. " +"contuviera todo el trabajo sobre Python que se había realizado en el CNRI. " "Por lo tanto, Python 1.6 representa el estado del árbol CVS en mayo de 2000, " -"siendo la novedad más importante el soporte de Unicode. El desarrollo " +"siendo la novedad más importante el soporte de Unicode. El desarrollo " "continuó después de mayo, por supuesto, así que el árbol 1.6 recibió algunas " -"correcciones para asegurar que es compatible con Python 2.0. 1.Por lo " -"tanto, la 6 es parte de la evolución de Python, y no una rama lateral." +"correcciones para asegurar que es compatible con Python 2.0. 1.Por lo tanto, " +"la 6 es parte de la evolución de Python, y no una rama lateral." #: ../Doc/whatsnew/2.0.rst:44 msgid "" -"So, should you take much interest in Python 1.6? Probably not. The " -"1.6final and 2.0beta1 releases were made on the same day (September 5, " -"2000), the plan being to finalize Python 2.0 within a month or so. If you " -"have applications to maintain, there seems little point in breaking things " -"by moving to 1.6, fixing them, and then having another round of breakage " -"within a month by moving to 2.0; you're better off just going straight to " -"2.0. Most of the really interesting features described in this document are " -"only in 2.0, because a lot of work was done between May and September." -msgstr "" -"Entonces, ¿deberías interesarte mucho por Python 1.6? Probablemente no. " -"Las versiones 1.6final y 2.0beta1 se publicaron el mismo día (5 de " -"septiembre de 2000), y el plan es finalizar Python 2.0 en un mes más o " -"menos. Si tienes aplicaciones que mantener, no parece que tenga mucho " -"sentido romper cosas al pasar a la 1.6, arreglarlas, y luego tener otra " -"ronda de roturas dentro de un mes al pasar a la 2.0; es mejor pasar " -"directamente a la 2.0. La mayoría de las características realmente " -"interesantes descritas en este documento sólo están en la 2.0, porque se " -"hizo mucho trabajo entre mayo y septiembre." +"So, should you take much interest in Python 1.6? Probably not. The 1.6final " +"and 2.0beta1 releases were made on the same day (September 5, 2000), the " +"plan being to finalize Python 2.0 within a month or so. If you have " +"applications to maintain, there seems little point in breaking things by " +"moving to 1.6, fixing them, and then having another round of breakage within " +"a month by moving to 2.0; you're better off just going straight to 2.0. Most " +"of the really interesting features described in this document are only in " +"2.0, because a lot of work was done between May and September." +msgstr "" +"Entonces, ¿deberías interesarte mucho por Python 1.6? Probablemente no. Las " +"versiones 1.6final y 2.0beta1 se publicaron el mismo día (5 de septiembre de " +"2000), y el plan es finalizar Python 2.0 en un mes más o menos. Si tienes " +"aplicaciones que mantener, no parece que tenga mucho sentido romper cosas al " +"pasar a la 1.6, arreglarlas, y luego tener otra ronda de roturas dentro de " +"un mes al pasar a la 2.0; es mejor pasar directamente a la 2.0. La mayoría " +"de las características realmente interesantes descritas en este documento " +"sólo están en la 2.0, porque se hizo mucho trabajo entre mayo y septiembre." #: ../Doc/whatsnew/2.0.rst:57 msgid "New Development Process" @@ -136,7 +135,7 @@ msgstr "" "absoluto, sino en la forma de desarrollar Python: en mayo de 2000 los " "desarrolladores de Python comenzaron a utilizar las herramientas puestas a " "disposición por SourceForge para almacenar el código fuente, rastrear los " -"informes de errores y gestionar la cola de envíos de parches. Para informar " +"informes de errores y gestionar la cola de envíos de parches. Para informar " "de errores o enviar parches para Python 2.0, utilice las herramientas de " "seguimiento de errores y gestión de parches disponibles en la página del " "proyecto Python, situada en https://sourceforge.net/projects/python/." @@ -165,17 +164,17 @@ msgstr "" "código fuente de Python. Anteriormente, había unas 7 personas que tenían " "acceso de escritura al árbol CVS, y todos los parches tenían que ser " "inspeccionados y comprobados por una de las personas de esta corta lista. " -"Obviamente, esto no era muy escalable. Al trasladar el árbol CVS a " +"Obviamente, esto no era muy escalable. Al trasladar el árbol CVS a " "SourceForge, fue posible conceder acceso de escritura a más personas; en " "septiembre de 2000 había 27 personas que podían revisar los cambios, un " -"aumento de cuatro veces. Esto hace posible cambios a gran escala que no se " +"aumento de cuatro veces. Esto hace posible cambios a gran escala que no se " "intentarían si tuvieran que pasar por el pequeño grupo de desarrolladores " -"del núcleo. Por ejemplo, un día a Peter Schneider-Kamp se le ocurrió dejar " +"del núcleo. Por ejemplo, un día a Peter Schneider-Kamp se le ocurrió dejar " "de lado la compatibilidad con K&R C y convertir el código fuente de Python a " "ANSI C. Después de obtener la aprobación en la lista de correo de python-" "dev, se lanzó a una ráfaga de revisiones que duró aproximadamente una " "semana, otros desarrolladores se unieron para ayudar, y el trabajo estaba " -"hecho. Si sólo hubiera habido 5 personas con acceso de escritura, " +"hecho. Si sólo hubiera habido 5 personas con acceso de escritura, " "probablemente esa tarea habría sido considerada como \"agradable, pero no " "vale la pena el tiempo y el esfuerzo necesarios\" y nunca se habría " "realizado." @@ -195,12 +194,12 @@ msgid "" "wrote an HTML screen-scraper that sends more useful messages." msgstr "" "El cambio al uso de los servicios de SourceForge ha dado lugar a un notable " -"aumento de la velocidad de desarrollo. Ahora los parches se envían, se " +"aumento de la velocidad de desarrollo. Ahora los parches se envían, se " "comentan, son revisados por otras personas además del remitente original, y " "van de un lado a otro hasta que se considera que el parche merece ser " -"revisado. Los errores se rastrean en una ubicación central y se pueden " +"revisado. Los errores se rastrean en una ubicación central y se pueden " "asignar a una persona específica para que los corrija, y podemos contar el " -"número de errores abiertos para medir el progreso. Esto no ha tenido un " +"número de errores abiertos para medir el progreso. Esto no ha tenido un " "coste: los desarrolladores tienen ahora más correo electrónico con el que " "lidiar, más listas de correo que seguir, y se han tenido que escribir " "herramientas especiales para el nuevo entorno. Por ejemplo, SourceForge " @@ -212,7 +211,7 @@ msgstr "" msgid "" "The ease of adding code caused a few initial growing pains, such as code was " "checked in before it was ready or without getting clear agreement from the " -"developer group. The approval process that has emerged is somewhat similar " +"developer group. The approval process that has emerged is somewhat similar " "to that used by the Apache group. Developers can vote +1, +0, -0, or -1 on a " "patch; +1 and -1 denote acceptance or rejection, while +0 and -0 mean the " "developer is mostly indifferent to the change, though with a slight positive " @@ -224,12 +223,12 @@ msgid "" msgstr "" "La facilidad para añadir código provocó algunos problemas iniciales de " "crecimiento, como el hecho de que el código se registrara antes de estar " -"listo o sin obtener un acuerdo claro del grupo de desarrolladores. El " +"listo o sin obtener un acuerdo claro del grupo de desarrolladores. El " "proceso de aprobación que ha surgido es algo similar al utilizado por el " "grupo Apache. Los desarrolladores pueden votar +1, +0, -0 o -1 sobre un " "parche; +1 y -1 denotan aceptación o rechazo, mientras que +0 y -0 " "significan que el desarrollador es mayormente indiferente al cambio, aunque " -"con un ligero sesgo positivo o negativo. El cambio más significativo con " +"con un ligero sesgo positivo o negativo. El cambio más significativo con " "respecto al modelo de Apache es que la votación es esencialmente consultiva, " "lo que permite a Guido van Rossum, que tiene el estatus de Dictador " "Benevolente Vitalicio, saber cuál es la opinión general. Puede seguir " @@ -254,11 +253,11 @@ msgstr "" "llegar a un buen diseño. Las discusiones sobre nuevas funcionalidades a " "menudo pueden explotar en largos hilos de la lista de correo, haciendo que " "la discusión sea difícil de seguir, y nadie puede leer todos los mensajes en " -"python-dev. Por lo tanto, se ha establecido un proceso relativamente formal " +"python-dev. Por lo tanto, se ha establecido un proceso relativamente formal " "para escribir Propuestas de Mejora de Python (PEPs), siguiendo el modelo del " -"proceso RFC de Internet. Las PEP son borradores de documentos que describen " +"proceso RFC de Internet. Las PEP son borradores de documentos que describen " "una nueva característica propuesta, y se revisan continuamente hasta que la " -"comunidad llega a un consenso, aceptando o rechazando la propuesta. Cita de " +"comunidad llega a un consenso, aceptando o rechazando la propuesta. Cita de " "la introducción de :pep:`1`, \"PEP Purpose and Guidelines\":" #: ../Doc/whatsnew/2.0.rst:120 @@ -268,9 +267,9 @@ msgid "" "for Python. The PEP should provide a concise technical specification of the " "feature and a rationale for the feature." msgstr "" -"PEP son las siglas de Python Enhancement Proposal. Un PEP es un documento " -"de diseño que proporciona información a la comunidad de Python, o que " -"describe una nueva característica para Python. El PEP debe proporcionar una " +"PEP son las siglas de Python Enhancement Proposal. Un PEP es un documento de " +"diseño que proporciona información a la comunidad de Python, o que describe " +"una nueva característica para Python. El PEP debe proporcionar una " "especificación técnica concisa de la característica y una justificación de " "la misma." @@ -283,9 +282,9 @@ msgid "" msgstr "" "Pretendemos que los PEPs sean los mecanismos principales para proponer " "nuevas características, para recoger las opiniones de la comunidad sobre un " -"tema y para documentar las decisiones de diseño que se han tomado en " -"Python. El autor del PEP es responsable de crear consenso dentro de la " -"comunidad y de documentar las opiniones discrepantes." +"tema y para documentar las decisiones de diseño que se han tomado en Python. " +"El autor del PEP es responsable de crear consenso dentro de la comunidad y " +"de documentar las opiniones discrepantes." #: ../Doc/whatsnew/2.0.rst:130 msgid "" @@ -297,10 +296,10 @@ msgid "" "Iteration\", to PEP 225, \"Elementwise/Objectwise Operators\"." msgstr "" "Lee el resto de :pep:`1` para conocer los detalles del proceso editorial, el " -"estilo y el formato de los PEP. Los PEP se mantienen en el árbol CVS de " +"estilo y el formato de los PEP. Los PEP se mantienen en el árbol CVS de " "Python en SourceForge, aunque no forman parte de la distribución de Python " "2.0, y también están disponibles en formato HTML en https://www.python.org/" -"dev/peps/. En septiembre de 2000, había 25 PEPS, desde :pep:`201`, " +"dev/peps/. En septiembre de 2000, había 25 PEPS, desde :pep:`201`, " "\"Lockstep Iteration\", hasta PEP 225, \"Elementwise/Objectwise Operators\"." #: ../Doc/whatsnew/2.0.rst:141 @@ -315,7 +314,7 @@ msgid "" "characters can be supported." msgstr "" "La mayor novedad de Python 2.0 es un nuevo tipo de datos fundamental: Las " -"cadenas Unicode. Unicode utiliza números de 16 bits para representar los " +"cadenas Unicode. Unicode utiliza números de 16 bits para representar los " "caracteres en lugar de los 8 bits utilizados por ASCII, lo que significa que " "se pueden admitir 65.536 caracteres distintos." @@ -331,10 +330,10 @@ msgstr "" "La interfaz final para el soporte de Unicode se alcanzó a través de " "innumerables discusiones, a menudo tormentosas, en la lista de correo de " "python-dev, y fue implementada en su mayor parte por Marc-André Lemburg, " -"basándose en una implementación del tipo de cadena Unicode de Fredrik " -"Lundh. Una explicación detallada de la interfaz fue escrita como :pep:" -"`100`, \"Python Unicode Integration\". Este artículo se limitará a cubrir " -"los puntos más significativos de las interfaces Unicode." +"basándose en una implementación del tipo de cadena Unicode de Fredrik Lundh. " +"Una explicación detallada de la interfaz fue escrita como :pep:`100`, " +"\"Python Unicode Integration\". Este artículo se limitará a cubrir los " +"puntos más significativos de las interfaces Unicode." #: ../Doc/whatsnew/2.0.rst:155 msgid "" @@ -345,9 +344,9 @@ msgid "" "can be used for characters up to U+01FF, which is represented by ``\\777``." msgstr "" "En el código fuente de Python, las cadenas Unicode se escriben como ``u " -"\"cadena\"``. Los caracteres Unicode arbitrarios pueden escribirse " +"\"cadena\"``. Los caracteres Unicode arbitrarios pueden escribirse " "utilizando una nueva secuencia de escape, ``uHHHH``, donde *HHHH* es un " -"número hexadecimal de 4 dígitos desde 0000 hasta FFFF. También se puede " +"número hexadecimal de 4 dígitos desde 0000 hasta FFFF. También se puede " "utilizar la secuencia de escape existente ``xHHHH``, y se pueden utilizar " "escapes octales para caracteres hasta U+01FF, que se representa con ``777``." @@ -367,15 +366,14 @@ msgstr "" "Las cadenas Unicode, al igual que las cadenas normales, son un tipo de " "secuencia inmutable. Pueden ser indexadas y cortadas, pero no modificadas en " "su lugar. Las cadenas Unicode tienen un método ``encode( [encoding] )`` que " -"devuelve una cadena de 8 bits en la codificación deseada. Las " -"codificaciones son nombradas por cadenas, como ``'ascii'``, ``'utf-8'``, " -"``'iso-8859-1'``, o lo que sea. Se define una API de códecs para " -"implementar y registrar nuevas codificaciones que luego están disponibles en " -"todo el programa Python. Si no se especifica una codificación, la " -"codificación por defecto suele ser ASCII de 7 bits, aunque puede cambiarse " -"para tu instalación de Python llamando a la función ``sys." -"setdefaultencoding(encoding)`` en una versión personalizada de :file:`site." -"py`." +"retorna una cadena de 8 bits en la codificación deseada. Las codificaciones " +"son nombradas por cadenas, como ``'ascii'``, ``'utf-8'``, ``'iso-8859-1'``, " +"o lo que sea. Se define una API de códecs para implementar y registrar " +"nuevas codificaciones que luego están disponibles en todo el programa " +"Python. Si no se especifica una codificación, la codificación por defecto " +"suele ser ASCII de 7 bits, aunque puede cambiarse para tu instalación de " +"Python llamando a la función ``sys.setdefaultencoding(encoding)`` en una " +"versión personalizada de :file:`site.py`." #: ../Doc/whatsnew/2.0.rst:172 msgid "" @@ -399,7 +397,7 @@ msgid "" "``unichr(ch)`` returns a Unicode string 1 character long, containing the " "character *ch*." msgstr "" -"``unichr(ch)`` devuelve una cadena Unicode de 1 carácter, que contiene el " +"``unichr(ch)`` retorna una cadena Unicode de 1 carácter, que contiene el " "carácter *ch*." #: ../Doc/whatsnew/2.0.rst:181 @@ -407,11 +405,10 @@ msgid "" "``ord(u)``, where *u* is a 1-character regular or Unicode string, returns " "the number of the character as an integer." msgstr "" -"``ord(u)``, donde *u* es una cadena regular o Unicode de 1 carácter, " -"devuelve el número del carácter como un entero." +"``ord(u)``, donde *u* es una cadena regular o Unicode de 1 carácter, retorna " +"el número del carácter como un entero." #: ../Doc/whatsnew/2.0.rst:184 -#, fuzzy msgid "" "``unicode(string [, encoding] [, errors] )`` creates a Unicode string from " "an 8-bit string. ``encoding`` is a string naming the encoding to use. The " @@ -422,7 +419,7 @@ msgid "" "replacement character, in case of any problems." msgstr "" "``unicode(string [, encoding] [, errors] )`` crea una cadena Unicode a " -"partir de una cadena de 8 bits. ``encoding`` es una cadena que nombra la " +"partir de una cadena de 8 bits. ``encoding`` es una cadena que nombra la " "codificación a utilizar. El parámetro ``errors`` especifica el tratamiento " "de los caracteres que no son válidos para la codificación actual; pasar " "``'strict`` como valor hace que se lance una excepción en cualquier error de " @@ -431,7 +428,6 @@ msgstr "" "reemplazo, en caso de cualquier problema." #: ../Doc/whatsnew/2.0.rst:192 -#, fuzzy msgid "" "The ``exec`` statement, and various built-ins such as ``eval()``, " "``getattr()``, and ``setattr()`` will also accept Unicode strings as well as " @@ -441,13 +437,12 @@ msgid "" msgstr "" "La sentencia ``exec``, y varias funciones integradas como ``eval()``, " "``getattr()``, y ``setattr()`` también aceptarán cadenas Unicode así como " -"cadenas regulares. (Es posible que en el proceso de corrección de esto se " +"cadenas regulares. (Es posible que en el proceso de corrección de esto se " "hayan pasado por alto algunas funciones incorporadas; si encuentra una " "función incorporada que acepte cadenas pero que no acepte cadenas Unicode en " "absoluto, por favor, infórmelo como un error)" #: ../Doc/whatsnew/2.0.rst:198 -#, fuzzy msgid "" "A new module, :mod:`unicodedata`, provides an interface to Unicode character " "properties. For example, ``unicodedata.category(u'A')`` returns the 2-" @@ -456,14 +451,13 @@ msgid "" "meaning that U+0660 is an Arabic number." msgstr "" "Un nuevo módulo, :mod:`unicodedata`, proporciona una interfaz para las " -"propiedades de los caracteres Unicode. Por ejemplo, ``unicodedata." -"category(u'A')`` devuelve la cadena de 2 caracteres 'Lu', la 'L' denota que " +"propiedades de los caracteres Unicode. Por ejemplo, ``unicodedata." +"category(u'A')`` retorna la cadena de 2 caracteres 'Lu', la 'L' denota que " "es una letra, y la 'u' significa que es mayúscula. ``unicodedata." -"bidirectional(u'\\u0660')`` devuelve 'AN', lo que significa que U+0660 es un " +"bidirectional(u'\\u0660')`` retorna 'AN', lo que significa que U+0660 es un " "número árabe." #: ../Doc/whatsnew/2.0.rst:204 -#, fuzzy msgid "" "The :mod:`codecs` module contains functions to look up existing encodings " "and register new ones. Unless you want to implement a new encoding, you'll " @@ -471,13 +465,12 @@ msgid "" "element tuple: ``(encode_func, decode_func, stream_reader, stream_writer)``." msgstr "" "El módulo :mod:`codecs` contiene funciones para buscar codificaciones " -"existentes y registrar otras nuevas. A menos que quiera implementar una " +"existentes y registrar otras nuevas. A menos que quiera implementar una " "nueva codificación, lo más habitual es que utilice la función ``codecs." -"lookup(encoding)``, que devuelve una tupla de 4 elementos: ``(encode_func, " +"lookup(encoding)``, que retorna una tupla de 4 elementos: ``(encode_func, " "decode_func, stream_reader, stream_writer)``." #: ../Doc/whatsnew/2.0.rst:209 -#, fuzzy msgid "" "*encode_func* is a function that takes a Unicode string, and returns a 2-" "tuple ``(string, length)``. *string* is an 8-bit string containing a " @@ -485,13 +478,12 @@ msgid "" "encoding, and *length* tells you how much of the Unicode string was " "converted." msgstr "" -"*encode_func* es una función que toma una cadena Unicode, y devuelve una 2-" -"tupla ``(cadena, longitud)``. *string* es una cadena de 8 bits que contiene " +"*encode_func* es una función que toma una cadena Unicode, y retorna una 2-" +"tupla ``(string, length)``. *string* es una cadena de 8 bits que contiene " "una porción (tal vez toda) de la cadena Unicode convertida a la codificación " "dada, y *longitud* indica la cantidad de cadena Unicode convertida." #: ../Doc/whatsnew/2.0.rst:214 -#, fuzzy msgid "" "*decode_func* is the opposite of *encode_func*, taking an 8-bit string and " "returning a 2-tuple ``(ustring, length)``, consisting of the resulting " @@ -499,12 +491,11 @@ msgid "" "bit string was consumed." msgstr "" "*decode_func* es lo opuesto a *encode_func*, tomando una cadena de 8 bits y " -"devolviendo una 2-tupla ``(ustring, length)``, que consiste en la cadena " +"retornando una 2-tupla ``(ustring, length)``, que consiste en la cadena " "Unicode resultante *ustring* y el entero *length* que dice cuánto de la " "cadena de 8 bits se consumió." #: ../Doc/whatsnew/2.0.rst:219 -#, fuzzy msgid "" "*stream_reader* is a class that supports decoding input from a stream. " "*stream_reader(file_obj)* returns an object that supports the :meth:`read`, :" @@ -512,12 +503,11 @@ msgid "" "translate from the given encoding and return Unicode strings." msgstr "" "*stream_reader* es una clase que soporta la decodificación de la entrada de " -"un flujo. *stream_reader(file_obj)* devuelve un objeto que soporta los " -"métodos :meth:`read`, :meth:`readline` y :meth:`readlines`. Todos estos " -"métodos traducirán desde la codificación dada y devolverán cadenas Unicode." +"un flujo. *stream_reader(file_obj)* retorna un objeto que soporta los " +"métodos :meth:`read`, :meth:`readline` y :meth:`readlines`. Todos estos " +"métodos traducirán desde la codificación dada y retornarán cadenas Unicode." #: ../Doc/whatsnew/2.0.rst:224 -#, fuzzy msgid "" "*stream_writer*, similarly, is a class that supports encoding output to a " "stream. *stream_writer(file_obj)* returns an object that supports the :meth:" @@ -525,12 +515,11 @@ msgid "" "strings, translating them to the given encoding on output." msgstr "" "*stream_writer*, de forma similar, es una clase que soporta la codificación " -"de la salida a un flujo. *stream_writer(file_obj)* devuelve un objeto que " -"soporta los métodos :meth:`write` y :meth:`writelines`. Estos métodos " +"de la salida a un flujo. *stream_writer(file_obj)* retorna un objeto que " +"soporta los métodos :meth:`write` y :meth:`writelines`. Estos métodos " "esperan cadenas Unicode, traduciéndolas a la codificación dada en la salida." #: ../Doc/whatsnew/2.0.rst:229 -#, fuzzy msgid "" "For example, the following code writes a Unicode string into a file, " "encoding it as UTF-8::" @@ -539,12 +528,10 @@ msgstr "" "codificándola como UTF-8::" #: ../Doc/whatsnew/2.0.rst:243 -#, fuzzy msgid "The following code would then read UTF-8 input from the file::" msgstr "El siguiente código leería la entrada UTF-8 del archivo::" #: ../Doc/whatsnew/2.0.rst:249 -#, fuzzy msgid "" "Unicode-aware regular expressions are available through the :mod:`re` " "module, which has a new underlying implementation called SRE written by " @@ -555,7 +542,6 @@ msgstr "" "SRE escrita por Fredrik Lundh de Secret Labs AB." #: ../Doc/whatsnew/2.0.rst:253 -#, fuzzy msgid "" "A ``-U`` command line option was added which causes the Python compiler to " "interpret all string literals as Unicode string literals. This is intended " @@ -571,12 +557,10 @@ msgstr "" "sólo cadenas Unicode." #: ../Doc/whatsnew/2.0.rst:262 -#, fuzzy msgid "List Comprehensions" msgstr "Comprensión de listas" #: ../Doc/whatsnew/2.0.rst:264 -#, fuzzy msgid "" "Lists are a workhorse data type in Python, and many programs manipulate a " "list at some point. Two common operations on lists are to loop over them, " @@ -586,15 +570,13 @@ msgid "" "strip off trailing whitespace from each line." msgstr "" "Las listas son un tipo de datos muy útil en Python, y muchos programas " -"manipulan una lista en algún momento. Dos operaciones comunes en las listas " +"manipulan una lista en algún momento. Dos operaciones comunes en las listas " "son hacer un bucle sobre ellas, y escoger los elementos que cumplen un " -"cierto criterio, o aplicar alguna función a cada elemento. Por ejemplo, " -"dada una lista de cadenas, podrías querer sacar todas las cadenas que " -"contengan una determinada subcadena, o quitar los espacios en blanco de cada " -"línea." +"cierto criterio, o aplicar alguna función a cada elemento. Por ejemplo, dada " +"una lista de cadenas, podrías querer sacar todas las cadenas que contengan " +"una determinada subcadena, o quitar los espacios en blanco de cada línea." #: ../Doc/whatsnew/2.0.rst:271 -#, fuzzy msgid "" "The existing :func:`map` and :func:`filter` functions can be used for this " "purpose, but they require a function as one of their arguments. This is " @@ -606,16 +588,15 @@ msgid "" "substring. You could write the following to do it::" msgstr "" "Las funciones :func:`map` y :func:`filter` existentes pueden usarse para " -"este propósito, pero requieren una función como uno de sus argumentos. Esto " +"este propósito, pero requieren una función como uno de sus argumentos. Esto " "está bien si hay una función incorporada que se puede pasar directamente, " "pero si no la hay, hay que crear una pequeña función para hacer el trabajo " "requerido, y las reglas de ámbito de Python hacen que el resultado sea feo " -"si la pequeña función necesita información adicional. Tomemos el primer " +"si la pequeña función necesita información adicional. Tomemos el primer " "ejemplo del párrafo anterior, encontrar todas las cadenas de la lista que " -"contienen una subcadena dada. Podrías escribir lo siguiente para hacerlo::" +"contienen una subcadena dada. Podrías escribir lo siguiente para hacerlo::" #: ../Doc/whatsnew/2.0.rst:286 -#, fuzzy msgid "" "Because of Python's scoping rules, a default argument is used so that the " "anonymous function created by the :keyword:`lambda` expression knows what " @@ -623,16 +604,14 @@ msgid "" msgstr "" "Debido a las reglas de ámbito de Python, se utiliza un argumento por defecto " "para que la función anónima creada por la expresión :keyword:`lambda` sepa " -"qué subcadena se está buscando. Las comprensiones de lista hacen esto más " +"qué subcadena se está buscando. Las comprensiones de lista hacen esto más " "limpio::" #: ../Doc/whatsnew/2.0.rst:292 -#, fuzzy msgid "List comprehensions have the form::" msgstr "Las comprensiones de listas tienen la forma::" #: ../Doc/whatsnew/2.0.rst:299 -#, fuzzy msgid "" "The :keyword:`!for`...\\ :keyword:`!in` clauses contain the sequences to be " "iterated over. The sequences do not have to be the same length, because " @@ -642,16 +621,15 @@ msgid "" "keyword:`!if` clause is optional; if present, *expression* is only evaluated " "and added to the result if *condition* is true." msgstr "" -"Las cláusulas :keyword:`!for`...\\N- :keyword:`!in` contienen las secuencias " -"a iterar. Las secuencias no tienen por qué tener la misma longitud, ya que " -"no se itera sobre ellas en paralelo, sino de izquierda a derecha; esto se " -"explica más claramente en los párrafos siguientes. Los elementos de la " -"lista generada serán los valores sucesivos de la *expresión*. La cláusula " -"final :keyword:`!if` es opcional; si está presente, la *expresión* sólo se " -"evalúa y se añade al resultado si la *condición* es verdadera." +"Las cláusulas :keyword:`!for`...\\ :keyword:`!in` contienen las secuencias a " +"iterar. Las secuencias no tienen por qué tener la misma longitud, ya que no " +"se itera sobre ellas en paralelo, sino de izquierda a derecha; esto se " +"explica más claramente en los párrafos siguientes. Los elementos de la lista " +"generada serán los valores sucesivos de la *expresión*. La cláusula final :" +"keyword:`!if` es opcional; si está presente, la *expresión* sólo se evalúa y " +"se añade al resultado si la *condición* es verdadera." #: ../Doc/whatsnew/2.0.rst:307 -#, fuzzy msgid "" "To make the semantics very clear, a list comprehension is equivalent to the " "following Python code::" @@ -660,32 +638,29 @@ msgstr "" "siguiente código de Python::" #: ../Doc/whatsnew/2.0.rst:319 -#, fuzzy msgid "" "This means that when there are multiple :keyword:`!for`...\\ :keyword:`!in` " "clauses, the resulting list will be equal to the product of the lengths of " "all the sequences. If you have two lists of length 3, the output list is 9 " "elements long::" msgstr "" -"Esto significa que cuando hay múltiples cláusulas :keyword:`!for`...\\N- :" +"Esto significa que cuando hay múltiples cláusulas :keyword:`!for`...\\ :" "keyword:`!in`, la lista resultante será igual al producto de las longitudes " -"de todas las secuencias. Si tiene dos listas de longitud 3, la lista de " +"de todas las secuencias. Si tiene dos listas de longitud 3, la lista de " "salida tendrá 9 elementos::" #: ../Doc/whatsnew/2.0.rst:330 -#, fuzzy msgid "" "To avoid introducing an ambiguity into Python's grammar, if *expression* is " "creating a tuple, it must be surrounded with parentheses. The first list " "comprehension below is a syntax error, while the second one is correct::" msgstr "" "Para evitar introducir una ambigüedad en la gramática de Python, si " -"*expresión* está creando una tupla, debe estar rodeada de paréntesis. La " +"*expresión* está creando una tupla, debe estar rodeada de paréntesis. La " "primera comprensión de la lista a continuación es un error de sintaxis, " "mientras que la segunda es correcta::" #: ../Doc/whatsnew/2.0.rst:339 -#, fuzzy msgid "" "The idea of list comprehensions originally comes from the functional " "programming language Haskell (https://www.haskell.org). Greg Ewing argued " @@ -694,19 +669,17 @@ msgid "" "on the python-dev mailing list and kept up-to-date by Skip Montanaro." msgstr "" "La idea de las comprensiones de listas procede originalmente del lenguaje de " -"programación funcional Haskell (https://www.haskell.org). Greg Ewing fue el " +"programación funcional Haskell (https://www.haskell.org). Greg Ewing fue el " "que más abogó por añadirlas a Python y escribió el parche inicial de " "comprensión de listas, que luego se discutió durante un tiempo aparentemente " "interminable en la lista de correo de python-dev y se mantuvo actualizada " "por Skip Montanaro." #: ../Doc/whatsnew/2.0.rst:349 -#, fuzzy msgid "Augmented Assignment" msgstr "Asignación aumentada" #: ../Doc/whatsnew/2.0.rst:351 -#, fuzzy msgid "" "Augmented assignment operators, another long-requested feature, have been " "added to Python 2.0. Augmented assignment operators include ``+=``, ``-=``, " @@ -715,13 +688,12 @@ msgid "" "= a + 2``." msgstr "" "Los operadores de asignación aumentados, otra característica largamente " -"solicitada, han sido añadidos a Python 2.0. Los operadores de asignación " -"aumentados incluyen ``+=``, ``-=``, ``*=``, etc. Por ejemplo, la sentencia " +"solicitada, han sido añadidos a Python 2.0. Los operadores de asignación " +"aumentados incluyen ``+=``, ``-=``, ``*=``, etc. Por ejemplo, la sentencia " "``a += 2`` incrementa el valor de la variable ``a`` en 2, lo que equivale a " "la sentencia algo más larga ``a = a + 2``." #: ../Doc/whatsnew/2.0.rst:356 -#, fuzzy msgid "" "The full list of supported assignment operators is ``+=``, ``-=``, ``*=``, " "``/=``, ``%=``, ``**=``, ``&=``, ``|=``, ``^=``, ``>>=``, and ``<<=``. " @@ -731,14 +703,13 @@ msgid "" "create a new instance with an incremented value." msgstr "" "La lista completa de operadores de asignación soportados es ``+=``, ``-=``, " -"``*=``, ``/=``, ``%=``, ``**=``, ``&=``, ``|=``, ``^=``, ``>>=``, y ``<=``. " +"``*=``, ``/=``, ``%=``, ``**=``, ``&=``, ``|=``, ``^=``, ``>>=``, y ``<=``. " "Las clases de Python pueden anular los operadores de asignación aumentados " -"definiendo métodos llamados :meth:`__iadd__`, :meth:`__isub__`, etc. Por " +"definiendo métodos llamados :meth:`__iadd__`, :meth:`__isub__`, etc. Por " "ejemplo, la siguiente clase :class:`Number` almacena un número y soporta el " "uso de += para crear una nueva instancia con un valor incrementado." #: ../Doc/whatsnew/2.0.rst:377 -#, fuzzy msgid "" "The :meth:`__iadd__` special method is called with the value of the " "increment, and should return a new instance with an appropriately modified " @@ -746,12 +717,11 @@ msgid "" "left-hand side." msgstr "" "El método especial :meth:`__iadd__` es llamado con el valor del incremento, " -"y debe devolver una nueva instancia con un valor adecuadamente modificado; " +"y debe retornar una nueva instancia con un valor adecuadamente modificado; " "este valor de retorno se vincula como el nuevo valor de la variable del lado " "izquierdo." #: ../Doc/whatsnew/2.0.rst:381 -#, fuzzy msgid "" "Augmented assignment operators were first introduced in the C programming " "language, and most C-derived languages, such as :program:`awk`, C++, Java, " @@ -760,16 +730,14 @@ msgid "" msgstr "" "Los operadores de asignación aumentada se introdujeron por primera vez en el " "lenguaje de programación C, y la mayoría de los lenguajes derivados de C, " -"como :program:`awk`, C++, Java, Perl y PHP también los soportan. El parche " +"como :program:`awk`, C++, Java, Perl y PHP también los soportan. El parche " "de asignación aumentada fue implementado por Thomas Wouters." #: ../Doc/whatsnew/2.0.rst:390 -#, fuzzy msgid "String Methods" -msgstr "Métodos de cadena" +msgstr "Métodos de cadena de caracteres" #: ../Doc/whatsnew/2.0.rst:392 -#, fuzzy msgid "" "Until now string-manipulation functionality was in the :mod:`string` module, " "which was usually a front-end for the :mod:`strop` module written in C. The " @@ -779,27 +747,25 @@ msgid "" "takes 3 string arguments, that means eight possible permutations, and " "correspondingly complicated code." msgstr "" -"Hasta ahora, la funcionalidad de manipulación de cadenas estaba en el " -"módulo :mod:`string`, que normalmente era un front-end para el módulo :mod:" -"`strop` escrito en C. La adición de Unicode supuso una dificultad para el " -"módulo :mod:`strop`, porque todas las funciones tendrían que ser reescritas " -"para aceptar cadenas de 8 bits o Unicode. Para funciones como :func:`string." -"replace`, que toma 3 argumentos de cadena, eso significa ocho posibles " -"permutaciones, y el correspondiente código complicado." +"Hasta ahora, la funcionalidad de manipulación de cadenas de caracteres " +"estaba en el módulo :mod:`string`, que normalmente era un front-end para el " +"módulo :mod:`strop` escrito en C. La adición de Unicode supuso una " +"dificultad para el módulo :mod:`strop`, porque todas las funciones tendrían " +"que ser reescritas para aceptar cadenas de 8 bits o Unicode. Para funciones " +"como :func:`string.replace`, que toma 3 argumentos de cadena, eso significa " +"ocho posibles permutaciones, y el correspondiente código complicado." #: ../Doc/whatsnew/2.0.rst:400 -#, fuzzy msgid "" "Instead, Python 2.0 pushes the problem onto the string type, making string " "manipulation functionality available through methods on both 8-bit strings " "and Unicode strings. ::" msgstr "" -"En cambio, Python 2.0 traslada el problema al tipo de cadena, haciendo que " -"la funcionalidad de manipulación de cadenas esté disponible a través de " -"métodos tanto en cadenas de 8 bits como en cadenas Unicode. ::" +"En cambio, Python 2.0 traslada el problema al tipo de cadena de caracteres, " +"haciendo que la funcionalidad de manipulación de cadenas esté disponible a " +"través de métodos tanto en cadenas de 8 bits como en cadenas Unicode. ::" #: ../Doc/whatsnew/2.0.rst:411 -#, fuzzy msgid "" "One thing that hasn't changed, a noteworthy April Fools' joke " "notwithstanding, is that Python strings are immutable. Thus, the string " @@ -808,20 +774,18 @@ msgid "" msgstr "" "Una cosa que no ha cambiado, a pesar de una notable broma de April Fools, es " "que las cadenas de Python son inmutables. Así, los métodos de cadenas " -"devuelven cadenas nuevas, y no modifican la cadena sobre la que operan." +"retornan cadenas nuevas, y no modifican la cadena sobre la que operan." #: ../Doc/whatsnew/2.0.rst:415 -#, fuzzy msgid "" "The old :mod:`string` module is still around for backwards compatibility, " "but it mostly acts as a front-end to the new string methods." msgstr "" "El antiguo módulo :mod:`string` sigue existiendo por compatibilidad con el " "pasado, pero actúa principalmente como un front-end para los nuevos métodos " -"de cadena." +"de cadena de caracteres." #: ../Doc/whatsnew/2.0.rst:418 -#, fuzzy msgid "" "Two methods which have no parallel in pre-2.0 versions, although they did " "exist in JPython for quite some time, are :meth:`startswith` and :meth:" @@ -834,7 +798,6 @@ msgstr "" "t``, mientras que ``s.endswith(t)`` es equivalente a ``s[-len(t):] == t``." #: ../Doc/whatsnew/2.0.rst:423 -#, fuzzy msgid "" "One other method which deserves special mention is :meth:`join`. The :meth:" "`join` method of a string receives one parameter, a sequence of strings, and " @@ -842,19 +805,17 @@ msgid "" "module, with the arguments reversed. In other words, ``s.join(seq)`` is " "equivalent to the old ``string.join(seq, s)``." msgstr "" -"Otro método que merece una mención especial es :meth:`join`. El método :" -"meth:`join` de una cadena recibe un parámetro, una secuencia de cadenas, y " -"es equivalente a la función :func:`string.join` del antiguo módulo :mod:" +"Otro método que merece una mención especial es :meth:`join`. El método :meth:" +"`join` de una cadena recibe un parámetro, una secuencia de cadenas, y es " +"equivalente a la función :func:`string.join` del antiguo módulo :mod:" "`string`, con los argumentos invertidos. En otras palabras, ``s.join(seq)`` " "es equivalente a la antigua ``string.join(seq, s)``." #: ../Doc/whatsnew/2.0.rst:433 -#, fuzzy msgid "Garbage Collection of Cycles" msgstr "Recogida de basura de los ciclos" #: ../Doc/whatsnew/2.0.rst:435 -#, fuzzy msgid "" "The C implementation of Python uses reference counting to implement garbage " "collection. Every Python object maintains a count of the number of " @@ -864,15 +825,14 @@ msgid "" "access it, and if the count is zero, no references exist any longer." msgstr "" "La implementación en C de Python utiliza el conteo de referencias para " -"implementar la recolección de basura. Cada objeto de Python mantiene un " +"implementar la recolección de basura. Cada objeto de Python mantiene un " "recuento del número de referencias que apuntan a sí mismo, y ajusta el " -"recuento a medida que se crean o destruyen referencias. Una vez que el " +"recuento a medida que se crean o destruyen referencias. Una vez que el " "recuento de referencias llega a cero, el objeto deja de ser accesible, ya " "que es necesario tener una referencia a un objeto para acceder a él, y si el " "recuento es cero, ya no existen referencias." #: ../Doc/whatsnew/2.0.rst:442 -#, fuzzy msgid "" "Reference counting has some pleasant properties: it's easy to understand and " "implement, and the resulting implementation is portable, fairly fast, and " @@ -884,13 +844,12 @@ msgstr "" "El conteo de referencias tiene algunas propiedades agradables: es fácil de " "entender e implementar, y la implementación resultante es portable, bastante " "rápida, y reacciona bien con otras bibliotecas que implementan sus propios " -"esquemas de manejo de memoria. El mayor problema del conteo de referencias " +"esquemas de manejo de memoria. El mayor problema del conteo de referencias " "es que a veces no se da cuenta de que los objetos ya no son accesibles, lo " -"que provoca una fuga de memoria. Esto ocurre cuando hay ciclos de " +"que provoca una fuga de memoria. Esto ocurre cuando hay ciclos de " "referencias." #: ../Doc/whatsnew/2.0.rst:449 -#, fuzzy msgid "" "Consider the simplest possible cycle, a class instance which has a " "reference to itself::" @@ -899,7 +858,6 @@ msgstr "" "una referencia a sí misma::" #: ../Doc/whatsnew/2.0.rst:455 -#, fuzzy msgid "" "After the above two lines of code have been executed, the reference count of " "``instance`` is 2; one reference is from the variable named ``'instance'``, " @@ -910,7 +868,6 @@ msgstr "" "``'instance``, y la otra es del atributo ``myself`` de la instancia." #: ../Doc/whatsnew/2.0.rst:459 -#, fuzzy msgid "" "If the next line of code is ``del instance``, what happens? The reference " "count of ``instance`` is decreased by 1, so it has a reference count of 1; " @@ -922,13 +879,12 @@ msgstr "" "Si la siguiente línea de código es ``del instance``, ¿qué ocurre? La cuenta " "de referencias de ``instance`` se reduce en 1, por lo que tiene una cuenta " "de referencias de 1; la referencia en el atributo ``myself`` sigue " -"existiendo. Sin embargo, la instancia ya no es accesible a través del " -"código de Python, y podría ser eliminada. Varios objetos pueden participar " -"en un ciclo si tienen referencias entre sí, haciendo que todos los objetos " -"se filtren." +"existiendo. Sin embargo, la instancia ya no es accesible a través del código " +"de Python, y podría ser eliminada. Varios objetos pueden participar en un " +"ciclo si tienen referencias entre sí, haciendo que todos los objetos se " +"filtren." #: ../Doc/whatsnew/2.0.rst:466 -#, fuzzy msgid "" "Python 2.0 fixes this problem by periodically executing a cycle detection " "algorithm which looks for inaccessible cycles and deletes the objects " @@ -943,7 +899,6 @@ msgstr "" "parámetros del recolector." #: ../Doc/whatsnew/2.0.rst:471 -#, fuzzy msgid "" "Running the cycle detection algorithm takes some time, and therefore will " "result in some additional overhead. It is hoped that after we've gotten " @@ -957,19 +912,18 @@ msgid "" "the :program:`configure` script." msgstr "" "Ejecutar el algoritmo de detección de ciclos lleva algo de tiempo, y por lo " -"tanto resultará en una sobrecarga adicional. Se espera que después de que " +"tanto resultará en una sobrecarga adicional. Se espera que después de que " "hayamos adquirido experiencia con la recogida de ciclos al utilizar la " "versión 2.0, Python 2.1 sea capaz de minimizar la sobrecarga con un " -"cuidadoso ajuste. Todavía no es obvio cuánto rendimiento se pierde, porque " +"cuidadoso ajuste. Todavía no es obvio cuánto rendimiento se pierde, porque " "la evaluación comparativa de esto es difícil y depende crucialmente de la " -"frecuencia con la que el programa crea y destruye objetos. La detección de " +"frecuencia con la que el programa crea y destruye objetos. La detección de " "ciclos puede ser desactivada cuando Python es compilado, si no puede " "permitirse ni siquiera una pequeña penalización de velocidad o sospecha que " "la recolección de ciclos es un error, especificando la opción :option:`!--" "without-cycle-gc` cuando se ejecuta el script :program:`configure`." #: ../Doc/whatsnew/2.0.rst:482 -#, fuzzy msgid "" "Several people tackled this problem and contributed to a solution. An early " "implementation of the cycle detection approach was written by Toby Kelsey. " @@ -981,11 +935,11 @@ msgid "" "threads titled \"Reference cycle collection for Python\" and \"Finalization " "again\"." msgstr "" -"Varias personas abordaron este problema y contribuyeron a una solución. Una " +"Varias personas abordaron este problema y contribuyeron a una solución. Una " "primera implementación del enfoque de detección de ciclos fue escrita por " -"Toby Kelsey. El algoritmo actual fue sugerido por Eric Tiedemann durante " -"una visita al CNRI, y Guido van Rossum y Neil Schemenauer escribieron dos " -"implementaciones diferentes, que posteriormente fueron integradas por Neil. " +"Toby Kelsey. El algoritmo actual fue sugerido por Eric Tiedemann durante una " +"visita al CNRI, y Guido van Rossum y Neil Schemenauer escribieron dos " +"implementaciones diferentes, que posteriormente fueron integradas por Neil. " "Muchas otras personas ofrecieron sugerencias a lo largo del camino; los " "archivos de marzo de 2000 de la lista de correo python-dev contienen la " "mayor parte de la discusión relevante, especialmente en los hilos titulados " @@ -993,12 +947,10 @@ msgstr "" "\"." #: ../Doc/whatsnew/2.0.rst:495 -#, fuzzy msgid "Other Core Changes" msgstr "Otros cambios en el núcleo" #: ../Doc/whatsnew/2.0.rst:497 -#, fuzzy msgid "" "Various minor changes have been made to Python's syntax and built-in " "functions. None of the changes are very far-reaching, but they're handy " @@ -1009,12 +961,10 @@ msgstr "" "conveniencias prácticas." #: ../Doc/whatsnew/2.0.rst:502 -#, fuzzy msgid "Minor Language Changes" -msgstr "Cambios lingüísticos menores" +msgstr "Cambios menores del lenguaje" #: ../Doc/whatsnew/2.0.rst:504 -#, fuzzy msgid "" "A new syntax makes it more convenient to call a given function with a tuple " "of arguments and/or a dictionary of keyword arguments. In Python 1.5 and " @@ -1032,11 +982,10 @@ msgstr "" "argumentos *args* y los argumentos de palabras clave en el diccionario " "*kw*. :func:`apply` es lo mismo en 2.0, pero gracias a un parche de Greg " "Ewing, ``f(*args, **kw)`` es una forma más corta y clara de conseguir el " -"mismo efecto. Esta sintaxis es simétrica con la sintaxis para definir " +"mismo efecto. Esta sintaxis es simétrica con la sintaxis para definir " "funciones::" #: ../Doc/whatsnew/2.0.rst:518 -#, fuzzy msgid "" "The ``print`` statement can now have its output directed to a file-like " "object by following the ``print`` with ``>> file``, similar to the " @@ -1051,22 +1000,21 @@ msgstr "" "redirección en los shells de Unix. Antes había que utilizar el método :meth:" "`write` del objeto tipo archivo, que carece de la comodidad y simplicidad de " "``print``, o bien asignar un nuevo valor a ``sys.stdout`` y luego restaurar " -"el valor anterior. Para enviar la salida al error estándar, es mucho más " +"el valor anterior. Para enviar la salida al error estándar, es mucho más " "fácil escribir esto::" #: ../Doc/whatsnew/2.0.rst:528 -#, fuzzy msgid "" "Modules can now be renamed on importing them, using the syntax ``import " "module as name`` or ``from module import name as othername``. The patch was " "submitted by Thomas Wouters." msgstr "" "Ahora se puede cambiar el nombre de los módulos al importarlos, utilizando " -"la sintaxis ``importar módulo como nombre`` o ``desde el módulo importar " -"nombre como otro nombre``. El parche fue enviado por Thomas Wouters." +"la sintaxis ``import module as name`` o ``from module import name as " +"othername``. El parche fue enviado por Thomas Wouters." #: ../Doc/whatsnew/2.0.rst:532 -#, fuzzy, python-format +#, python-format msgid "" "A new format style is available when using the ``%`` operator; '%r' will " "insert the :func:`repr` of its argument. This was also added from symmetry " @@ -1075,14 +1023,13 @@ msgid "" "('abc', 'abc')`` returns a string containing ``'abc' abc``." msgstr "" "Un nuevo estilo de formato está disponible cuando se utiliza el operador ``" -"%``; '%r' insertará el :func:`repr` de su argumento. Esto también se añadió " +"%``; '%r' insertará el :func:`repr` de su argumento. Esto también se añadió " "por consideraciones de simetría, esta vez por simetría con el estilo de " -"formato existente '%s', que inserta el :func:`str` de su argumento. Por " -"ejemplo, ``'%r %s' % ('abc', 'abc')`` devuelve una cadena que contiene " +"formato existente '%s', que inserta el :func:`str` de su argumento. Por " +"ejemplo, ``'%r %s' % ('abc', 'abc')`` retorna una cadena que contiene " "``'abc' abc``." #: ../Doc/whatsnew/2.0.rst:538 -#, fuzzy msgid "" "Previously there was no way to implement a class that overrode Python's " "built-in :keyword:`in` operator and implemented a custom version. ``obj in " @@ -1096,17 +1043,16 @@ msgid "" msgstr "" "Anteriormente no había forma de implementar una clase que sobrepasara el " "operador incorporado de Python :keyword:`in` e implementara una versión " -"personalizada. El operador :meth:`in` devuelve true si *obj* está presente " -"en la secuencia *seq*; Python lo calcula simplemente probando cada índice de " -"la secuencia hasta que se encuentra *obj* o se encuentra un :exc:" -"`IndexError`. Moshe Zadka ha contribuido con un parche que añade un método " -"mágico :meth:`__contains__` para proporcionar una implementación " -"personalizada para :keyword:`!in`. Además, los nuevos objetos incorporados " -"escritos en C pueden definir lo que :keyword:`!in` significa para ellos a " -"través de una nueva ranura en el protocolo de secuencia." +"personalizada.``obj in seq`` retorna verdadero si *obj* está presente en la " +"secuencia *seq*; Python lo calcula simplemente probando cada índice de la " +"secuencia hasta que se encuentra *obj* o se encuentra un :exc:`IndexError`. " +"Moshe Zadka ha contribuido con un parche que añade un método mágico :meth:" +"`__contains__` para proporcionar una implementación personalizada para :" +"keyword:`!in`. Además, los nuevos objetos incorporados escritos en C pueden " +"definir lo que :keyword:`!in` significa para ellos a través de una nueva " +"ranura en el protocolo de secuencia." #: ../Doc/whatsnew/2.0.rst:547 -#, fuzzy msgid "" "Earlier versions of Python used a recursive algorithm for deleting objects. " "Deeply nested data structures could cause the interpreter to fill up the C " @@ -1118,13 +1064,12 @@ msgstr "" "Las versiones anteriores de Python utilizaban un algoritmo recursivo para " "borrar objetos. Las estructuras de datos muy anidadas podían hacer que el " "intérprete llenara la pila de C y se bloqueara; Christian Tismer reescribió " -"la lógica de borrado para solucionar este problema. En una nota " -"relacionada, la comparación de objetos recursivos se repite infinitamente y " -"se bloquea; Jeremy Hylton reescribió el código para que no se bloquee, " -"produciendo un resultado útil. Por ejemplo, después de este código::" +"la lógica de borrado para solucionar este problema. En una nota relacionada, " +"la comparación de objetos recursivos se repite infinitamente y se bloquea; " +"Jeremy Hylton reescribió el código para que no se bloquee, produciendo un " +"resultado útil. Por ejemplo, después de este código::" #: ../Doc/whatsnew/2.0.rst:559 -#, fuzzy msgid "" "The comparison ``a==b`` returns true, because the two recursive data " "structures are isomorphic. See the thread \"trashcan and PR#7\" in the April " @@ -1135,18 +1080,17 @@ msgid "" "even if a user-defined :meth:`__cmp__` method encountered an error, since " "the resulting exception would simply be silently swallowed." msgstr "" -"La comparación ``a==b`` devuelve verdadero, porque las dos estructuras de " +"La comparación ``a==b`` retorna verdadero, porque las dos estructuras de " "datos recursivas son isomorfas. Véase el hilo \"trashcan and PR#7\" en los " "archivos de abril de 2000 de la lista de correo de python-dev para la " "discusión que condujo a esta implementación, y algunos enlaces relevantes " -"útiles. Tenga en cuenta que las comparaciones ahora también pueden " -"generar excepciones. En versiones anteriores de Python, una operación de " -"comparación como ``cmp(a,b)`` siempre producía una respuesta, incluso si un " -"método :meth:`__cmp__` definido por el usuario encontraba un error, ya que " -"la excepción resultante simplemente se tragaba en silencio." +"útiles. Tenga en cuenta que las comparaciones ahora también pueden generar " +"excepciones. En versiones anteriores de Python, una operación de comparación " +"como ``cmp(a,b)`` siempre producía una respuesta, incluso si un método :meth:" +"`__cmp__` definido por el usuario encontraba un error, ya que la excepción " +"resultante simplemente se tragaba en silencio." #: ../Doc/whatsnew/2.0.rst:571 -#, fuzzy msgid "" "Work has been done on porting Python to 64-bit Windows on the Itanium " "processor, mostly by Trent Mick of ActiveState. (Confusingly, ``sys." @@ -1156,14 +1100,13 @@ msgid "" "net/ for more information." msgstr "" "Se ha trabajado en portar Python a Windows de 64 bits en el procesador " -"Itanium, principalmente por Trent Mick de ActiveState. (Confusamente, ``sys." +"Itanium, principalmente por Trent Mick de ActiveState. (Confusamente, ``sys." "platform`` sigue siendo ``'win32`` en Win64 porque parece que para facilitar " "la portabilidad, MS Visual C++ trata el código como de 32 bits en Itanium) " "PythonWin también es compatible con Windows CE; vea la página de Python CE " "en http://pythonce.sourceforge.net/ para más información." #: ../Doc/whatsnew/2.0.rst:577 -#, fuzzy msgid "" "Another new platform is Darwin/MacOS X; initial support for it is in Python " "2.0. Dynamic loading works, if you specify \"configure --with-dyld --with-" @@ -1176,7 +1119,6 @@ msgstr "" "fuentes de Python para obtener más instrucciones." #: ../Doc/whatsnew/2.0.rst:581 -#, fuzzy msgid "" "An attempt has been made to alleviate one of Python's warts, the often-" "confusing :exc:`NameError` exception when code refers to a local variable " @@ -1189,7 +1131,7 @@ msgid "" msgstr "" "Se ha intentado aliviar uno de los defectos de Python, la a menudo confusa " "excepción :exc:`NameError` cuando el código hace referencia a una variable " -"local antes de que se le haya asignado un valor. Por ejemplo, el siguiente " +"local antes de que se le haya asignado un valor. Por ejemplo, el siguiente " "código lanza una excepción en la sentencia ``print`` tanto en 1.5.2 como en " "2.0; en 1.5.2 se lanza una excepción :exc:`NameError`, mientras que en 2.0 " "se lanza una nueva excepción :exc:`UnboundLocalError`. :exc:" @@ -1198,23 +1140,20 @@ msgstr "" "funcionando. ::" #: ../Doc/whatsnew/2.0.rst:595 -#, fuzzy msgid "" "Two new exceptions, :exc:`TabError` and :exc:`IndentationError`, have been " "introduced. They're both subclasses of :exc:`SyntaxError`, and are raised " "when Python code is found to be improperly indented." msgstr "" "Se han introducido dos nuevas excepciones, :exc:`TabError` y :exc:" -"`IndentationError`. Ambas son subclases de :exc:`SyntaxError`, y se lanzan " +"`IndentationError`. Ambas son subclases de :exc:`SyntaxError`, y se lanzan " "cuando el código Python se encuentra con una sangría incorrecta." #: ../Doc/whatsnew/2.0.rst:601 -#, fuzzy msgid "Changes to Built-in Functions" msgstr "Cambios en las funciones incorporadas" #: ../Doc/whatsnew/2.0.rst:603 -#, fuzzy msgid "" "A new built-in, ``zip(seq1, seq2, ...)``, has been added. :func:`zip` " "returns a list of tuples where each tuple contains the i-th element from " @@ -1223,16 +1162,15 @@ msgid "" "``None`` if the sequences aren't all of the same length, while :func:`zip` " "truncates the returned list to the length of the shortest argument sequence." msgstr "" -"Se ha añadido un nuevo built-in, ``zip(seq1, seq2, ...)``. :func:`zip` " -"devuelve una lista de tuplas donde cada tupla contiene el i-ésimo elemento " -"de cada una de las secuencias del argumento. La diferencia entre :func:" -"`zip` y ``map(None, seq1, seq2)`` es que :func:`map` rellena las secuencias " -"con ``None`` si las secuencias no tienen la misma longitud, mientras que :" -"func:`zip` trunca la lista devuelta a la longitud de la secuencia argumental " -"más corta." +"Se ha añadido un nuevo built-in, ``zip(seq1, seq2, ...)``. :func:`zip` " +"retorna una lista de tuplas donde cada tupla contiene el i-ésimo elemento de " +"cada una de las secuencias del argumento. La diferencia entre :func:`zip` y " +"``map(None, seq1, seq2)`` es que :func:`map` rellena las secuencias con " +"``None`` si las secuencias no tienen la misma longitud, mientras que :func:" +"`zip` trunca la lista retornada a la longitud de la secuencia argumental más " +"corta." #: ../Doc/whatsnew/2.0.rst:610 -#, fuzzy msgid "" "The :func:`int` and :func:`long` functions now accept an optional \"base\" " "parameter when the first argument is a string. ``int('123', 10)`` returns " @@ -1241,14 +1179,12 @@ msgid "" "explicit base\"." msgstr "" "Las funciones :func:`int` y :func:`long` aceptan ahora un parámetro \"base\" " -"opcional cuando el primer argumento es una cadena. La función :func:" -"`int('123', 10)`` devuelve 123, mientras que la función :func:`long`` " -"devuelve 291. La función ``int('123', 16)`` lanza una excepción :exc:" -"`TypeError` con el mensaje \"no se puede convertir una cadena con base " -"explícita\"." +"opcional cuando el primer argumento es una cadena. `int('123', 10)`` retorna " +"123, mientras que ``int('123', 16)`` retorna 291. ``int(123, 16)`` lanza una " +"excepción :exc:`TypeError` con el mensaje \"no se puede convertir una cadena " +"con base explícita\"." #: ../Doc/whatsnew/2.0.rst:616 -#, fuzzy msgid "" "A new variable holding more detailed version information has been added to " "the :mod:`sys` module. ``sys.version_info`` is a tuple ``(major, minor, " @@ -1257,14 +1193,13 @@ msgid "" "as ``\"alpha\"``, ``\"beta\"``, or ``\"final\"`` for a final release." msgstr "" "Se ha añadido al módulo :mod:`sys` una nueva variable que contiene " -"información más detallada sobre la versión. ``sys.version_info`` es una " +"información más detallada sobre la versión. ``sys.version_info`` es una " "tupla ``(major, minor, micro, level, serial)`` Por ejemplo, en una " "hipotética 2.0.1beta1, ``sys.version_info`` sería ``(2, 0, 1, 'beta', 1)``. " "*level* es una cadena como ``\"alpha\"``, ``\"beta\"``, o ``\"final\"`` para " "una versión final." #: ../Doc/whatsnew/2.0.rst:622 -#, fuzzy msgid "" "Dictionaries have an odd new method, ``setdefault(key, default)``, which " "behaves similarly to the existing :meth:`get` method. However, if the key " @@ -1274,19 +1209,17 @@ msgid "" msgstr "" "Los diccionarios tienen un nuevo y extraño método, ``setdefault(key, " "default)``, que se comporta de forma similar al método :meth:`get` " -"existente. Sin embargo, si falta la clave, :meth:`setdefault` devuelve el " +"existente. Sin embargo, si falta la clave, :meth:`setdefault` retorna el " "valor de *default* como haría :meth:`get`, y también lo inserta en el " -"diccionario como valor de *clave*. Así, las siguientes líneas de código::" +"diccionario como valor de *key*. Así, las siguientes líneas de código::" #: ../Doc/whatsnew/2.0.rst:633 -#, fuzzy msgid "" "can be reduced to a single ``return dict.setdefault(key, [])`` statement." msgstr "" "puede reducirse a una única sentencia ``return dict.setdefault(key, [])``." #: ../Doc/whatsnew/2.0.rst:635 -#, fuzzy msgid "" "The interpreter sets a maximum recursion depth in order to catch runaway " "recursion before filling the C stack and causing a core dump or GPF.. " @@ -1306,12 +1239,10 @@ msgstr "" "script, :file:`Misc/find_recursionlimit.py`." #: ../Doc/whatsnew/2.0.rst:647 -#, fuzzy msgid "Porting to 2.0" msgstr "Adaptación a la versión 2.0" #: ../Doc/whatsnew/2.0.rst:649 -#, fuzzy msgid "" "New Python releases try hard to be compatible with previous releases, and " "the record has been pretty good. However, some changes are considered " @@ -1321,7 +1252,7 @@ msgid "" "cause old Python code to break." msgstr "" "Las nuevas versiones de Python se esfuerzan por ser compatibles con las " -"anteriores, y el historial ha sido bastante bueno. Sin embargo, algunos " +"anteriores, y el historial ha sido bastante bueno. Sin embargo, algunos " "cambios se consideran lo suficientemente útiles, normalmente porque corrigen " "decisiones de diseño iniciales que resultaron ser activamente erróneas, que " "no siempre se puede evitar romper la compatibilidad hacia atrás. Esta " @@ -1329,7 +1260,6 @@ msgstr "" "Python antiguo se rompa." #: ../Doc/whatsnew/2.0.rst:656 -#, fuzzy msgid "" "The change which will probably break the most code is tightening up the " "arguments accepted by some methods. Some methods would take multiple " @@ -1342,18 +1272,17 @@ msgid "" "``L.append( (1,2) )``." msgstr "" "El cambio que probablemente romperá la mayor parte del código es el " -"endurecimiento de los argumentos aceptados por algunos métodos. Algunos " +"endurecimiento de los argumentos aceptados por algunos métodos. Algunos " "métodos tomaban múltiples argumentos y los trataban como una tupla, " "particularmente varios métodos de lista como :meth:`append` y :meth:" "`insert`. En versiones anteriores de Python, si ``L`` es una lista, ``L." -"append( 1,2 )`` añade la tupla ``(1,2)`` a la lista. En Python 2.0 esto " +"append( 1,2 )`` añade la tupla ``(1,2)`` a la lista. En Python 2.0 esto " "provoca una excepción :exc:`TypeError` con el mensaje 'append requiere " -"exactamente 1 argumento; se han dado 2'. La solución es simplemente añadir " +"exactamente 1 argumento; se han dado 2'. La solución es simplemente añadir " "un conjunto extra de paréntesis para pasar ambos valores como una tupla: " "``L.append( (1,2) )``." #: ../Doc/whatsnew/2.0.rst:665 -#, fuzzy msgid "" "The earlier versions of these methods were more forgiving because they used " "an old function in Python's C interface to parse their arguments; 2.0 " @@ -1369,13 +1298,12 @@ msgstr "" "argumentos; la versión 2.0 los moderniza para utilizar :func:" "`PyArg_ParseTuple`, la función actual de análisis de argumentos, que " "proporciona mensajes de error más útiles y trata las llamadas con múltiples " -"argumentos como errores. Si es absolutamente necesario usar la versión 2.0 " +"argumentos como errores. Si es absolutamente necesario usar la versión 2.0 " "pero no puedes arreglar tu código, puedes editar :file:`Objects/listobject." "c` y definir el símbolo del preprocesador ``NO_STRICT_LIST_APPEND`` para " "preservar el antiguo comportamiento; esto no es recomendable." #: ../Doc/whatsnew/2.0.rst:673 -#, fuzzy msgid "" "Some of the functions in the :mod:`socket` module are still forgiving in " "this way. For example, :func:`socket.connect( ('hostname', 25) )` is the " @@ -1390,19 +1318,18 @@ msgid "" "again in a future Python version." msgstr "" "Algunas de las funciones del módulo :mod:`socket` siguen siendo indulgentes " -"en este sentido. Por ejemplo, :func:`socket.connect( ('hostname', 25) )` es " +"en este sentido. Por ejemplo, :func:`socket.connect( ('hostname', 25) )` es " "la forma correcta, pasando una tupla que representa una dirección IP, pero :" "func:`socket.connect( 'hostname', 25 )` también funciona. :func:`socket." -"connect_ex` y :func:`socket.bind` son igualmente fáciles de usar. 2.0alpha1 " +"connect_ex` y :func:`socket.bind` son igualmente fáciles de usar. 2.0alpha1 " "endureció estas funciones, pero como la documentación utilizaba la forma " "errónea de argumentos múltiples, mucha gente escribió código que se rompería " -"con la comprobación más estricta. GvR se echó atrás en los cambios ante la " +"con la comprobación más estricta. GvR se echó atrás en los cambios ante la " "reacción del público, así que para el módulo :mod:`socket`, la documentación " "se arregló y la forma de argumento múltiple simplemente se marcó como " "obsoleta; se *reforzará* de nuevo en una futura versión de Python." #: ../Doc/whatsnew/2.0.rst:684 -#, fuzzy msgid "" "The ``\\x`` escape in string literals now takes exactly 2 hex digits. " "Previously it would consume all the hex digits following the 'x' and take " @@ -1410,12 +1337,11 @@ msgid "" "\\x56``." msgstr "" "El escape ``\\x`` en los literales de cadena ahora toma exactamente 2 " -"dígitos hexadecimales. Antes consumía todos los dígitos hexadecimales que " -"seguían a la \"x\" y tomaba los 8 bits más bajos del resultado, por lo que " -"``x123456`` era equivalente a ``x56``." +"dígitos hexadecimales. Antes consumía todos los dígitos hexadecimales que " +"seguían a la 'x' y tomaba los 8 bits más bajos del resultado, por lo que ``" +"\\x123456`` era equivalente a ``\\x56``." #: ../Doc/whatsnew/2.0.rst:688 -#, fuzzy msgid "" "The :exc:`AttributeError` and :exc:`NameError` exceptions have a more " "friendly error message, whose text will be something like ``'Spam' instance " @@ -1424,14 +1350,13 @@ msgid "" "to take advantage of this fact will break in 2.0." msgstr "" "Las excepciones :exc:`AttributeError` y :exc:`NameError` tienen un mensaje " -"de error más amigable, cuyo texto será algo así como ``La instancia 'Spam' " -"no tiene el atributo 'eggs'`` o ``el nombre 'eggs' no está definido``. " -"Anteriormente, el mensaje de error era simplemente la falta del nombre del " -"atributo ``huevos``, y el código escrito para aprovechar este hecho se " -"romperá en la versión 2.0." +"de error más amigable, cuyo texto será algo así como ``'Spam' instance has " +"no attribute 'eggs'`` o ``name 'eggs' is not defined``. Anteriormente, el " +"mensaje de error era simplemente la falta del nombre del atributo ``eggs``, " +"y el código escrito para aprovechar este hecho se romperá en la versión 2.0." #: ../Doc/whatsnew/2.0.rst:694 -#, fuzzy, python-format +#, python-format msgid "" "Some work has been done to make integers and long integers a bit more " "interchangeable. In 1.5.2, large-file support was added for Solaris, to " @@ -1448,23 +1373,22 @@ msgid "" "2L**64`` will produce the string ``18446744073709551616``." msgstr "" "Se ha trabajado para que los enteros y los enteros largos sean un poco más " -"intercambiables. En la versión 1.5.2, se añadió soporte para archivos " +"intercambiables. En la versión 1.5.2, se añadió soporte para archivos " "grandes en Solaris, para permitir la lectura de archivos de más de 2 GiB; " -"esto hizo que el método :meth:`tell` de los objetos de archivo devolviera un " -"entero largo en lugar de un entero normal. Algunos códigos restaban dos " +"esto hizo que el método :meth:`tell` de los objetos de archivo retornara un " +"entero largo en lugar de un entero normal. Algunos códigos restaban dos " "desplazamientos de archivos e intentaban utilizar el resultado para " "multiplicar una secuencia o cortar una cadena, pero esto generaba un :exc:" -"`TypeError`. En la versión 2.0, los enteros largos pueden utilizarse para " +"`TypeError`. En la versión 2.0, los enteros largos pueden utilizarse para " "multiplicar o cortar una secuencia, y se comportarán como se espera " "intuitivamente; ``3L * 'abc'`` produce 'abcabcabc', y ``(0,1,2,3)[2L:4L]`` " "produce (2,3). Los enteros largos también pueden utilizarse en varios " "contextos en los que antes sólo se aceptaban enteros, como en el método :" "meth:`seek` de los objetos de archivo, y en los formatos soportados por el " -"operador ``%`` (``%d``, ``%i``, ``%x``, etc.). Por ejemplo, ``\"%d\" % " +"operador ``%`` (``%d``, ``%i``, ``%x``, etc.). Por ejemplo, ``\"%d\" % " "2L**64`` producirá la cadena ``18446744073709551616``." #: ../Doc/whatsnew/2.0.rst:708 -#, fuzzy msgid "" "The subtlest long integer change of all is that the :func:`str` of a long " "integer no longer has a trailing 'L' character, though :func:`repr` still " @@ -1476,14 +1400,14 @@ msgid "" msgstr "" "El cambio más sutil de los enteros largos es que el :func:`str` de un entero " "largo ya no tiene un carácter 'L' al final, aunque :func:`repr` todavía lo " -"incluye. La 'L' molestaba a muchas personas que querían imprimir enteros " +"incluye. La 'L' molestaba a muchas personas que querían imprimir enteros " "largos con el mismo aspecto que los enteros normales, ya que tenían que " -"esforzarse por cortar el carácter. Esto ya no es un problema en 2.0, pero " -"el código que hace ``str(longval)[:-1]`` y asume que la 'L' está ahí, ahora " +"esforzarse por cortar el carácter. Esto ya no es un problema en 2.0, pero el " +"código que hace ``str(longval)[:-1]`` y asume que la 'L' está ahí, ahora " "perderá el dígito final." #: ../Doc/whatsnew/2.0.rst:716 -#, fuzzy, python-format +#, python-format msgid "" "Taking the :func:`repr` of a float now uses a different formatting precision " "than :func:`str`. :func:`repr` uses ``%.17g`` format string for C's :func:" @@ -1496,14 +1420,13 @@ msgstr "" "Tomar el :func:`repr` de un flotador utiliza ahora una precisión de formato " "diferente a la de :func:`str`. :func:`repr` utiliza la cadena de formato ``" "%.17g`` para el :func:`sprintf` de C, mientras que :func:`str` utiliza ``" -"%.12g`` como antes. El efecto es que :func:`repr` puede mostrar " -"ocasionalmente más decimales que :func:`str`, para ciertos números. Por " +"%.12g`` como antes. El efecto es que :func:`repr` puede mostrar " +"ocasionalmente más decimales que :func:`str`, para ciertos números. Por " "ejemplo, el número 8,1 no puede representarse exactamente en binario, por lo " "que ``repr(8,1)`` es ``'8,09999999999996'``, mientras que str(8,1) es " "``'8,1'``." #: ../Doc/whatsnew/2.0.rst:724 -#, fuzzy msgid "" "The ``-X`` command-line option, which turned all standard exceptions into " "strings instead of classes, has been removed; the standard exceptions will " @@ -1513,17 +1436,15 @@ msgid "" msgstr "" "La opción de línea de comandos ``-X``, que convertía todas las excepciones " "estándar en cadenas en lugar de clases, ha sido eliminada; las excepciones " -"estándar serán ahora siempre clases. El módulo :mod:`exceptions` que " +"estándar serán ahora siempre clases. El módulo :mod:`exceptions` que " "contiene las excepciones estándar ha sido traducido de Python a un módulo C " "integrado, escrito por Barry Warsaw y Fredrik Lundh." #: ../Doc/whatsnew/2.0.rst:740 -#, fuzzy msgid "Extending/Embedding Changes" -msgstr "Ampliación/Incorporación de cambios" +msgstr "Extensión/Incorporación de cambios" #: ../Doc/whatsnew/2.0.rst:742 -#, fuzzy msgid "" "Some of the changes are under the covers, and will only be apparent to " "people writing C extension modules or embedding a Python interpreter in a " @@ -1532,11 +1453,10 @@ msgid "" msgstr "" "Algunos de los cambios están bajo la cubierta, y sólo serán evidentes para " "la gente que escribe módulos de extensión de C o que incrusta un intérprete " -"de Python en una aplicación más grande. Si no estás tratando con la API de " -"C de Python, puedes saltarte esta sección." +"de Python en una aplicación más grande. Si no estás tratando con la API de C " +"de Python, puedes saltarte esta sección." #: ../Doc/whatsnew/2.0.rst:747 -#, fuzzy msgid "" "The version number of the Python C API was incremented, so C extensions " "compiled for 1.5.2 must be recompiled in order to work with 2.0. On " @@ -1546,13 +1466,12 @@ msgid "" msgstr "" "El número de versión de la API C de Python se incrementó, por lo que las " "extensiones C compiladas para 1.5.2 deben ser recompiladas para que " -"funcionen con 2.0. En Windows, no es posible que Python 2.0 importe una " +"funcionen con 2.0. En Windows, no es posible que Python 2.0 importe una " "extensión de terceros construida para Python 1.5.x debido a cómo funcionan " "las DLL de Windows, por lo que Python lanzará una excepción y la importación " "fallará." #: ../Doc/whatsnew/2.0.rst:753 -#, fuzzy msgid "" "Users of Jim Fulton's ExtensionClass module will be pleased to find out that " "hooks have been added so that ExtensionClasses are now supported by :func:" @@ -1568,7 +1487,6 @@ msgstr "" "isinstance(obj, myExtensionClass)``." #: ../Doc/whatsnew/2.0.rst:759 -#, fuzzy msgid "" "The :file:`Python/importdl.c` file, which was a mass of #ifdefs to support " "dynamic loading on many different platforms, was cleaned up and reorganised " @@ -1582,13 +1500,12 @@ msgstr "" "soportar la carga dinámica en muchas plataformas diferentes, fue limpiado y " "reorganizado por Greg Stein. :file:`importdl.c` es ahora bastante pequeño, y " "el código específico de la plataforma se ha movido a un montón de archivos :" -"file:`Python/dynload_\\*.c`. Otra limpieza: también había una serie de " +"file:`Python/dynload_\\*.c`. Otra limpieza: también había una serie de " "archivos :file:`my\\*.h` en el directorio Include/ que contenían varios " "hacks de portabilidad; se han fusionado en un único archivo, :file:`Include/" "pyport.h`." #: ../Doc/whatsnew/2.0.rst:767 -#, fuzzy msgid "" "Vladimir Marangozov's long-awaited malloc restructuring was completed, to " "make it easy to have the Python interpreter use a custom allocator instead " @@ -1599,14 +1516,13 @@ msgid "" msgstr "" "Se ha completado la tan esperada reestructuración de malloc de Vladimir " "Marangozov, para facilitar que el intérprete de Python utilice un asignador " -"personalizado en lugar del estándar de C :func:`malloc`. Para la " +"personalizado en lugar del estándar de C :func:`malloc`. Para la " "documentación, lea los comentarios en :file:`Include/pymem.h` y :file:" -"`Include/objimpl.h`. Para ver las largas discusiones durante las cuales se " +"`Include/objimpl.h`. Para ver las largas discusiones durante las cuales se " "elaboró la interfaz, consulte los archivos web de las listas 'patches' y " "'python-dev' en python.org." #: ../Doc/whatsnew/2.0.rst:774 -#, fuzzy msgid "" "Recent versions of the GUSI development environment for MacOS support POSIX " "threads. Therefore, Python's POSIX threading support now works on the " @@ -1614,12 +1530,11 @@ msgid "" "also contributed." msgstr "" "Las versiones recientes del entorno de desarrollo GUSI para MacOS soportan " -"hilos POSIX. Por lo tanto, el soporte de hilos POSIX de Python ahora " -"funciona en Macintosh. También se ha contribuido al soporte de hilos " +"hilos POSIX. Por lo tanto, el soporte de hilos POSIX de Python ahora " +"funciona en Macintosh. También se ha contribuido al soporte de hilos " "utilizando la biblioteca GNU ``pth`` del espacio de usuario." #: ../Doc/whatsnew/2.0.rst:779 -#, fuzzy msgid "" "Threading support on Windows was enhanced, too. Windows supports thread " "locks that use kernel objects only in case of contention; in the common case " @@ -1628,16 +1543,15 @@ msgid "" "as an unthreaded version; with the 2.0 changes, the difference is only 10%. " "These improvements were contributed by Yakov Markovitch." msgstr "" -"También se ha mejorado el soporte de hilos en Windows. Windows soporta " +"También se ha mejorado el soporte de hilos en Windows. Windows soporta " "bloqueos de hilos que utilizan objetos del núcleo sólo en caso de " "contención; en el caso común cuando no hay contención, utilizan funciones " -"más simples que son un orden de magnitud más rápido. Una versión con hilos " +"más simples que son un orden de magnitud más rápido. Una versión con hilos " "de Python 1.5.2 en NT es dos veces más lenta que una versión sin hilos; con " -"los cambios de la 2.0, la diferencia es sólo del 10%. Estas mejoras fueron " +"los cambios de la 2.0, la diferencia es sólo del 10%. Estas mejoras fueron " "aportadas por Yakov Markovitch." #: ../Doc/whatsnew/2.0.rst:786 -#, fuzzy msgid "" "Python 2.0's source now uses only ANSI C prototypes, so compiling Python now " "requires an ANSI C compiler, and can no longer be done using a compiler that " @@ -1648,7 +1562,6 @@ msgstr "" "puede hacerse utilizando un compilador que sólo soporte K&R C." #: ../Doc/whatsnew/2.0.rst:790 -#, fuzzy msgid "" "Previously the Python virtual machine used 16-bit numbers in its bytecode, " "limiting the size of source files. In particular, this affected the maximum " @@ -1657,14 +1570,13 @@ msgid "" "Charles G. Waldman raises the limit from ``2^16`` to ``2^{32}``." msgstr "" "Anteriormente, la máquina virtual de Python utilizaba números de 16 bits en " -"su bytecode, lo que limitaba el tamaño de los archivos fuente. En " +"su bytecode, lo que limitaba el tamaño de los archivos fuente. En " "particular, esto afectaba al tamaño máximo de las listas literales y los " "diccionarios en el código fuente de Python; ocasionalmente, las personas que " -"generan código Python se encontraban con este límite. Un parche de Charles " +"generan código Python se encontraban con este límite. Un parche de Charles " "G. Waldman eleva el límite de ``2^16`` a ``2^{32}``." #: ../Doc/whatsnew/2.0.rst:796 -#, fuzzy msgid "" "Three new convenience functions intended for adding constants to a module's " "dictionary at module initialization time were added: :func:" @@ -1677,13 +1589,12 @@ msgstr "" "Se han añadido tres nuevas funciones para añadir constantes al diccionario " "de un módulo en el momento de la inicialización: :func:" "`PyModule_AddObject`, :func:`PyModule_AddIntConstant`, y :func:" -"`PyModule_AddStringConstant`. Cada una de estas funciones toma un objeto de " +"`PyModule_AddStringConstant`. Cada una de estas funciones toma un objeto de " "módulo, una cadena C terminada en cero que contiene el nombre a añadir, y un " -"tercer argumento para el valor a asignar al nombre. Este tercer argumento " +"tercer argumento para el valor a asignar al nombre. Este tercer argumento " "es, respectivamente, un objeto Python, un C long o una cadena C." #: ../Doc/whatsnew/2.0.rst:804 -#, fuzzy msgid "" "A wrapper API was added for Unix-style signal handlers. :func:`PyOS_getsig` " "gets a signal handler and :func:`PyOS_setsig` will set a new handler." @@ -1693,12 +1604,10 @@ msgstr "" "`PyOS_setsig` establecerá un nuevo manejador." #: ../Doc/whatsnew/2.0.rst:811 -#, fuzzy msgid "Distutils: Making Modules Easy to Install" -msgstr "Distutils: Facilitar la instalación de módulos" +msgstr "Distutils: Facilitando la instalación de módulos" #: ../Doc/whatsnew/2.0.rst:813 -#, fuzzy msgid "" "Before Python 2.0, installing modules was a tedious affair -- there was no " "way to figure out automatically where Python is installed, or what compiler " @@ -1711,16 +1620,15 @@ msgid "" msgstr "" "Antes de Python 2.0, la instalación de módulos era un asunto tedioso -- no " "había forma de averiguar automáticamente dónde se instalaba Python, o qué " -"opciones del compilador se debían usar para los módulos de extensión. Los " +"opciones del compilador se debían usar para los módulos de extensión. Los " "autores de software tenían que pasar por un arduo ritual de edición de " "Makefiles y archivos de configuración, que sólo funcionaban realmente en " -"Unix y dejaban sin soporte a Windows y MacOS. Los usuarios de Python se " +"Unix y dejaban sin soporte a Windows y MacOS. Los usuarios de Python se " "enfrentaban a instrucciones de instalación muy diferentes que variaban entre " "los distintos paquetes de extensión, lo que hacía que la administración de " "una instalación de Python fuera una tarea ardua." #: ../Doc/whatsnew/2.0.rst:821 -#, fuzzy msgid "" "The SIG for distribution utilities, shepherded by Greg Ward, has created the " "Distutils, a system to make package installation much easier. They form " @@ -1736,32 +1644,30 @@ msgid "" "directories, and more." msgstr "" "El SIG de utilidades de distribución, liderado por Greg Ward, ha creado las " -"Distutils, un sistema para facilitar la instalación de paquetes. Forman el " +"Distutils, un sistema para facilitar la instalación de paquetes. Forman el " "paquete :mod:`distutils`, una nueva parte de la biblioteca estándar de " "Python. En el mejor de los casos, la instalación de un módulo de Python " "desde el código fuente requerirá los mismos pasos: primero simplemente hay " "que desempaquetar el archivo tar o zip, y ejecutar \"``python setup.py " -"install``. La plataforma será detectada automáticamente, el compilador será " +"install``. La plataforma será detectada automáticamente, el compilador será " "reconocido, los módulos de extensión C serán compilados, y la distribución " -"será instalada en el directorio apropiado. Los argumentos opcionales de la " +"será instalada en el directorio apropiado. Los argumentos opcionales de la " "línea de comandos proporcionan más control sobre el proceso de instalación, " "el paquete distutils ofrece muchos lugares para anular los valores " "predeterminados - separando la construcción de la instalación, construyendo " "o instalando en directorios no predeterminados, y más." #: ../Doc/whatsnew/2.0.rst:833 -#, fuzzy msgid "" "In order to use the Distutils, you need to write a :file:`setup.py` script. " "For the simple case, when the software contains only .py files, a minimal :" "file:`setup.py` can be just a few lines long::" msgstr "" -"Para usar las Distutils, necesitas escribir un script :file:`setup.py`. " -"Para el caso simple, cuando el software contiene sólo archivos .py, un :file:" +"Para usar las Distutils, necesitas escribir un script :file:`setup.py`. Para " +"el caso simple, cuando el software contiene sólo archivos .py, un :file:" "`setup.py` mínimo puede tener sólo unas pocas líneas::" #: ../Doc/whatsnew/2.0.rst:841 -#, fuzzy msgid "" "The :file:`setup.py` file isn't much more complicated if the software " "consists of a few packages::" @@ -1770,7 +1676,6 @@ msgstr "" "de unos pocos paquetes::" #: ../Doc/whatsnew/2.0.rst:848 -#, fuzzy msgid "" "A C extension can be the most complicated case; here's an example taken from " "the PyXML package::" @@ -1779,7 +1684,6 @@ msgstr "" "tomado del paquete PyXML::" #: ../Doc/whatsnew/2.0.rst:864 -#, fuzzy msgid "" "The Distutils can also take care of creating source and binary " "distributions. The \"sdist\" command, run by \"``python setup.py sdist``', " @@ -1795,12 +1699,11 @@ msgstr "" "construye una distribución fuente como :file:`foo-1.0.tar.gz`. Añadir nuevos " "comandos no es difícil, ya se han aportado los comandos \"bdist_rpm\" y " "\"bdist_wininst\" para crear una distribución RPM y un instalador de Windows " -"para el software, respectivamente. Los comandos para crear otros formatos " -"de distribución, como los paquetes de Debian y los archivos :file:`.pkg` de " +"para el software, respectivamente. Los comandos para crear otros formatos de " +"distribución, como los paquetes de Debian y los archivos :file:`.pkg` de " "Solaris, se encuentran en diversas etapas de desarrollo." #: ../Doc/whatsnew/2.0.rst:873 -#, fuzzy msgid "" "All this is documented in a new manual, *Distributing Python Modules*, that " "joins the basic set of Python documentation." @@ -1813,7 +1716,6 @@ msgid "XML Modules" msgstr "Módulos XML" #: ../Doc/whatsnew/2.0.rst:882 -#, fuzzy msgid "" "Python 1.5.2 included a simple XML parser in the form of the :mod:`xmllib` " "module, contributed by Sjoerd Mullender. Since 1.5.2's release, two " @@ -1828,25 +1730,23 @@ msgid "" "also working on improved documentation." msgstr "" "La versión 1.5.2 de Python incluía un sencillo analizador XML en forma de " -"módulo :mod:`xmllib`, aportado por Sjoerd Mullender. Desde el lanzamiento " -"de la versión 1.5.2, se han generalizado dos interfaces diferentes para el " +"módulo :mod:`xmllib`, aportado por Sjoerd Mullender. Desde el lanzamiento de " +"la versión 1.5.2, se han generalizado dos interfaces diferentes para el " "procesamiento de XML: SAX2 (versión 2 de la API Simple para XML) proporciona " "una interfaz basada en eventos con algunas similitudes con :mod:`xmllib`, y " "el DOM (Modelo de Objetos de Documento) proporciona una interfaz basada en " "un árbol, transformando un documento XML en un árbol de nodos que puede ser " -"atravesado y modificado. Python 2.0 incluye una interfaz SAX2 y una " -"interfaz DOM reducida como parte del paquete :mod:`xml`. Aquí daremos una " -"breve descripción de estas nuevas interfaces; consulte la documentación de " -"Python o el código fuente para obtener detalles completos. El SIG XML de " -"Python también está trabajando en la mejora de la documentación." +"atravesado y modificado. Python 2.0 incluye una interfaz SAX2 y una interfaz " +"DOM reducida como parte del paquete :mod:`xml`. Aquí daremos una breve " +"descripción de estas nuevas interfaces; consulte la documentación de Python " +"o el código fuente para obtener detalles completos. El SIG XML de Python " +"también está trabajando en la mejora de la documentación." #: ../Doc/whatsnew/2.0.rst:896 -#, fuzzy msgid "SAX2 Support" msgstr "Soporte de SAX2" #: ../Doc/whatsnew/2.0.rst:898 -#, fuzzy msgid "" "SAX defines an event-driven interface for parsing XML. To use SAX, you must " "write a SAX handler class. Handler classes inherit from various classes " @@ -1856,16 +1756,15 @@ msgid "" "by the parser, the :meth:`characters` method is called for every chunk of " "character data, and so forth." msgstr "" -"SAX define una interfaz basada en eventos para analizar XML. Para usar SAX, " -"debes escribir una clase manejadora de SAX. Las clases manejadoras heredan " +"SAX define una interfaz basada en eventos para analizar XML. Para usar SAX, " +"debes escribir una clase manejadora de SAX. Las clases manejadoras heredan " "de varias clases proporcionadas por SAX, y sobrescriben varios métodos que " -"luego serán llamados por el analizador XML. Por ejemplo, los métodos :meth:" +"luego serán llamados por el analizador XML. Por ejemplo, los métodos :meth:" "`startElement` y :meth:`endElement` son llamados para cada etiqueta inicial " "y final encontrada por el analizador, el método :meth:`characters` es " "llamado para cada trozo de datos de caracteres, etc." #: ../Doc/whatsnew/2.0.rst:906 -#, fuzzy msgid "" "The advantage of the event-driven approach is that the whole document " "doesn't have to be resident in memory at any one time, which matters if you " @@ -1875,12 +1774,11 @@ msgid "" msgstr "" "La ventaja del enfoque basado en eventos es que todo el documento no tiene " "que residir en la memoria en un momento dado, lo cual es importante si estás " -"procesando documentos realmente enormes. Sin embargo, escribir la clase " +"procesando documentos realmente enormes. Sin embargo, escribir la clase " "manejadora de SAX puede ser muy complicado si se intenta modificar la " "estructura del documento de alguna manera elaborada." #: ../Doc/whatsnew/2.0.rst:912 -#, fuzzy msgid "" "For example, this little example program defines a handler that prints a " "message for every starting and ending tag, and then parses the file :file:" @@ -1891,7 +1789,6 @@ msgstr "" "archivo :file:`hamlet.xml` usándolo::" #: ../Doc/whatsnew/2.0.rst:935 -#, fuzzy msgid "" "For more information, consult the Python documentation, or the XML HOWTO at " "http://pyxml.sourceforge.net/topics/howto/xml-howto.html." @@ -1900,12 +1797,10 @@ msgstr "" "http://pyxml.sourceforge.net/topics/howto/xml-howto.html." #: ../Doc/whatsnew/2.0.rst:940 -#, fuzzy msgid "DOM Support" msgstr "Soporte DOM" #: ../Doc/whatsnew/2.0.rst:942 -#, fuzzy msgid "" "The Document Object Model is a tree-based representation for an XML " "document. A top-level :class:`Document` instance is the root of the tree, " @@ -1917,17 +1812,16 @@ msgid "" "back into XML." msgstr "" "El Modelo de Objetos del Documento es una representación basada en un árbol " -"para un documento XML. Una instancia de :class:`Document` de nivel superior " +"para un documento XML. Una instancia de :class:`Document` de nivel superior " "es la raíz del árbol, y tiene un único hijo que es la instancia de :class:" "`Element` de nivel superior. Este :class:`Element` tiene nodos hijos que " "representan los datos de los caracteres y cualquier subelemento, que puede " -"tener otros hijos propios, y así sucesivamente. Utilizando el DOM puedes " +"tener otros hijos propios, y así sucesivamente. Utilizando el DOM puedes " "recorrer el árbol resultante como quieras, acceder a los valores de los " "elementos y atributos, insertar y eliminar nodos y volver a convertir el " "árbol en XML." #: ../Doc/whatsnew/2.0.rst:950 -#, fuzzy msgid "" "The DOM is useful for modifying XML documents, because you can create a DOM " "tree, modify it by adding new nodes or rearranging subtrees, and then " @@ -1938,13 +1832,12 @@ msgid "" msgstr "" "El DOM es útil para modificar documentos XML, porque se puede crear un árbol " "DOM, modificarlo añadiendo nuevos nodos o reordenando subárboles, y luego " -"producir un nuevo documento XML como salida. También se puede construir un " +"producir un nuevo documento XML como salida. También se puede construir un " "árbol DOM manualmente y convertirlo en XML, lo que puede ser una forma más " -"flexible de producir una salida XML que simplemente escribir````..." -"\\Nen un archivo." +"flexible de producir una salida XML que simplemente escribir ````...\\ " +"```` un archivo." #: ../Doc/whatsnew/2.0.rst:956 -#, fuzzy msgid "" "The DOM implementation included with Python lives in the :mod:`xml.dom." "minidom` module. It's a lightweight implementation of the Level 1 DOM with " @@ -1952,12 +1845,11 @@ msgid "" "convenience functions are provided for generating a DOM tree::" msgstr "" "La implementación del DOM incluida en Python se encuentra en el módulo :mod:" -"`xml.dom.minidom`. Es una implementación ligera del DOM de nivel 1 con " -"soporte para espacios de nombres XML. Las funciones :func:`parse` y :func:" +"`xml.dom.minidom`. Es una implementación ligera del DOM de nivel 1 con " +"soporte para espacios de nombres XML. Las funciones :func:`parse` y :func:" "`parseString` se proporcionan para generar un árbol DOM::" #: ../Doc/whatsnew/2.0.rst:964 -#, fuzzy msgid "" "``doc`` is a :class:`Document` instance. :class:`Document`, like all the " "other DOM classes such as :class:`Element` and :class:`Text`, is a subclass " @@ -1968,24 +1860,22 @@ msgid "" "class:`Document` instances have a method to find all child elements with a " "given tag name. Continuing from the previous 2-line example::" msgstr "" -"El :class:`Document` es una instancia de :class:`Document`. El :class:" -"`Document`, al igual que el resto de clases del DOM como el :class:`Element` " -"y el :class:`Text`, es una subclase de la clase base :class:`Node`. Por lo " -"tanto, todos los nodos de un árbol DOM soportan ciertos métodos comunes, " -"como :meth:`toxml` que devuelve una cadena que contiene la representación " -"XML del nodo y sus hijos. Cada clase también tiene métodos especiales " -"propios; por ejemplo, las instancias :class:`Element` y :class:`Document` " -"tienen un método para encontrar todos los elementos hijos con un nombre de " -"etiqueta dado. Continuando con el ejemplo anterior de 2 líneas::" +"``doc`` es una instancia de :class:`Document`. El :class:`Document`, al " +"igual que el resto de clases del DOM como el :class:`Element` y el :class:" +"`Text`, es una subclase de la clase base :class:`Node`. Por lo tanto, todos " +"los nodos de un árbol DOM soportan ciertos métodos comunes, como :meth:" +"`toxml` que retorna una cadena que contiene la representación XML del nodo y " +"sus hijos. Cada clase también tiene métodos especiales propios; por ejemplo, " +"las instancias :class:`Element` y :class:`Document` tienen un método para " +"encontrar todos los elementos hijos con un nombre de etiqueta dado. " +"Continuando con el ejemplo anterior de 2 líneas::" #: ../Doc/whatsnew/2.0.rst:977 -#, fuzzy msgid "For the *Hamlet* XML file, the above few lines output::" msgstr "" "Para el archivo XML *Hamlet*, las líneas anteriores dan como resultado::" #: ../Doc/whatsnew/2.0.rst:982 -#, fuzzy msgid "" "The root element of the document is available as ``doc.documentElement``, " "and its children can be easily modified by deleting, adding, or removing " @@ -1996,7 +1886,6 @@ msgstr "" "nodos::" #: ../Doc/whatsnew/2.0.rst:997 -#, fuzzy msgid "" "Again, I will refer you to the Python documentation for a complete listing " "of the different :class:`Node` classes and their various methods." @@ -2005,12 +1894,10 @@ msgstr "" "completa de las diferentes clases :class:`Node` y sus diversos métodos." #: ../Doc/whatsnew/2.0.rst:1002 -#, fuzzy msgid "Relationship to PyXML" msgstr "Relación con PyXML" #: ../Doc/whatsnew/2.0.rst:1004 -#, fuzzy msgid "" "The XML Special Interest Group has been working on XML-related Python code " "for a while. Its code distribution, called PyXML, is available from the " @@ -2020,14 +1907,13 @@ msgid "" "compatibility with the 2.0 :mod:`xml` package." msgstr "" "El Grupo de Interés Especial XML lleva un tiempo trabajando en código Python " -"relacionado con XML. Su distribución de código, llamada PyXML, está " +"relacionado con XML. Su distribución de código, llamada PyXML, está " "disponible en las páginas web del SIG en https://www.python.org/community/" "sigs/current/xml-sig. La distribución de PyXML también utiliza el nombre de " -"paquete ``xml``. Si has escrito programas que utilizan PyXML, probablemente " +"paquete ``xml``. Si has escrito programas que utilizan PyXML, probablemente " "te preguntes sobre su compatibilidad con el paquete 2.0 :mod:`xml`." #: ../Doc/whatsnew/2.0.rst:1010 -#, fuzzy msgid "" "The answer is that Python 2.0's :mod:`xml` package isn't compatible with " "PyXML, but can be made compatible by installing a recent version PyXML. " @@ -2040,37 +1926,32 @@ msgid "" msgstr "" "La respuesta es que el paquete :mod:`xml` de Python 2.0 no es compatible con " "PyXML, pero puede hacerse compatible instalando una versión reciente de " -"PyXML. Muchas aplicaciones pueden arreglárselas con el soporte XML que se " +"PyXML. Muchas aplicaciones pueden arreglárselas con el soporte XML que se " "incluye en Python 2.0, pero las aplicaciones más complicadas requerirán que " -"se instale el paquete PyXML completo. Cuando se instala, las versiones " -"0.6.0 o superiores de PyXML sustituyen al paquete :mod:`xml` que se entrega " -"con Python, y son un estricto superconjunto del paquete estándar, añadiendo " -"un montón de características adicionales. Algunas de las características " +"se instale el paquete PyXML completo. Cuando se instala, las versiones 0.6.0 " +"o superiores de PyXML sustituyen al paquete :mod:`xml` que se entrega con " +"Python, y son un estricto superconjunto del paquete estándar, añadiendo un " +"montón de características adicionales. Algunas de las características " "adicionales de PyXML incluyen:" #: ../Doc/whatsnew/2.0.rst:1019 -#, fuzzy msgid "4DOM, a full DOM implementation from FourThought, Inc." msgstr "4DOM, una implementación completa de DOM de FourThought, Inc." #: ../Doc/whatsnew/2.0.rst:1021 -#, fuzzy msgid "The xmlproc validating parser, written by Lars Marius Garshol." msgstr "El parser de validación xmlproc, escrito por Lars Marius Garshol." #: ../Doc/whatsnew/2.0.rst:1023 -#, fuzzy msgid "The :mod:`sgmlop` parser accelerator module, written by Fredrik Lundh." msgstr "" "El módulo acelerador del parser :mod:`sgmlop`, escrito por Fredrik Lundh." #: ../Doc/whatsnew/2.0.rst:1029 -#, fuzzy msgid "Module changes" msgstr "Cambios en los módulos" #: ../Doc/whatsnew/2.0.rst:1031 -#, fuzzy msgid "" "Lots of improvements and bugfixes were made to Python's extensive standard " "library; some of the affected modules include :mod:`readline`, :mod:" @@ -2083,11 +1964,10 @@ msgstr "" "biblioteca estándar de Python; algunos de los módulos afectados son :mod:" "`readline`, :mod:`ConfigParser`, :mod:`cgi`, :mod:`calendar`, :mod:`posix`, :" "mod:`readline`, :mod:`xmllib`, :mod:`aifc`, :mod:`chunk, wave`, :mod:" -"`random`, :mod:`shelve`, y :mod:`nntplib`. Consulte los registros de CVS " +"`random`, :mod:`shelve`, y :mod:`nntplib`. Consulte los registros de CVS " "para conocer los detalles exactos parche por parche." #: ../Doc/whatsnew/2.0.rst:1037 -#, fuzzy msgid "" "Brian Gallew contributed OpenSSL support for the :mod:`socket` module. " "OpenSSL is an implementation of the Secure Socket Layer, which encrypts the " @@ -2099,17 +1979,15 @@ msgid "" "no one has implemented FTP or SMTP over SSL." msgstr "" "Brian Gallew ha contribuido al soporte de OpenSSL para el módulo :mod:" -"`socket`. OpenSSL es una implementación de Secure Socket Layer, que " -"encripta los datos que se envían a través de un socket. Al compilar Python, " -"puedes editar :file:`Modules/Setup` para incluir el soporte de SSL, que " -"añade una función adicional al módulo :mod:`socket`: ``socket.ssl(socket, " -"keyfile, certfile)``, que toma un objeto socket y devuelve un socket SSL. " -"Los módulos :mod:`httplib` y :mod:`urllib` también han sido modificados para " -"soportar URLs ``https://``, aunque nadie ha implementado FTP o SMTP sobre " -"SSL." +"`socket`. OpenSSL es una implementación de Secure Socket Layer, que encripta " +"los datos que se envían a través de un socket. Al compilar Python, puedes " +"editar :file:`Modules/Setup` para incluir el soporte de SSL, que añade una " +"función adicional al módulo :mod:`socket`: ``socket.ssl(socket, keyfile, " +"certfile)``, que toma un objeto socket y retorna un socket SSL. Los módulos :" +"mod:`httplib` y :mod:`urllib` también han sido modificados para soportar " +"URLs ``https://``, aunque nadie ha implementado FTP o SMTP sobre SSL." #: ../Doc/whatsnew/2.0.rst:1046 -#, fuzzy msgid "" "The :mod:`httplib` module has been rewritten by Greg Stein to support " "HTTP/1.1. Backward compatibility with the 1.5 version of :mod:`httplib` is " @@ -2123,7 +2001,6 @@ msgstr "" "diferente de interfaces." #: ../Doc/whatsnew/2.0.rst:1051 -#, fuzzy msgid "" "The :mod:`Tkinter` module now supports Tcl/Tk version 8.1, 8.2, or 8.3, and " "support for the older 7.x versions has been dropped. The Tkinter module now " @@ -2132,14 +2009,13 @@ msgid "" "``create_polygon`` much faster, especially when using lots of coordinates." msgstr "" "El módulo :mod:`Tkinter` soporta ahora la versión 8.1, 8.2 o 8.3 de Tcl/Tk, " -"y se ha eliminado el soporte para las versiones 7.x más antiguas. El módulo " +"y se ha eliminado el soporte para las versiones 7.x más antiguas. El módulo " "Tkinter ahora soporta la visualización de cadenas Unicode en los widgets Tk. " "Además, Fredrik Lundh ha contribuido con una optimización que hace que " "operaciones como ``create_line`` y ``create_polygon`` sean mucho más " "rápidas, especialmente cuando se utilizan muchas coordenadas." #: ../Doc/whatsnew/2.0.rst:1057 -#, fuzzy msgid "" "The :mod:`curses` module has been greatly extended, starting from Oliver " "Andrich's enhanced version, to provide many additional functions from " @@ -2151,13 +2027,12 @@ msgstr "" "El módulo :mod:`curses` ha sido ampliado en gran medida, a partir de la " "versión mejorada de Oliver Andrich, para proporcionar muchas funciones " "adicionales de los curses ncurses y SYSV, como el color, el soporte de " -"conjuntos de caracteres alternativos, los pads y el soporte de ratón. Esto " +"conjuntos de caracteres alternativos, los pads y el soporte de ratón. Esto " "significa que el módulo ya no es compatible con los sistemas operativos que " "sólo tienen curses BSD, pero no parece haber ningún sistema operativo " "actualmente mantenido que caiga en esta categoría." #: ../Doc/whatsnew/2.0.rst:1064 -#, fuzzy msgid "" "As mentioned in the earlier discussion of 2.0's Unicode support, the " "underlying implementation of the regular expressions provided by the :mod:" @@ -2167,29 +2042,26 @@ msgid "" msgstr "" "Como se mencionó en la discusión anterior sobre el soporte Unicode de la " "2.0, la implementación subyacente de las expresiones regulares " -"proporcionadas por el módulo :mod:`re` ha sido cambiada. SRE, un nuevo " -"motor de expresiones regulares escrito por Fredrik Lundh y parcialmente " -"financiado por Hewlett Packard, soporta la comparación con cadenas de 8 bits " -"y cadenas Unicode." +"proporcionadas por el módulo :mod:`re` ha sido cambiada. SRE, un nuevo motor " +"de expresiones regulares escrito por Fredrik Lundh y parcialmente financiado " +"por Hewlett Packard, soporta la comparación con cadenas de 8 bits y cadenas " +"Unicode." #: ../Doc/whatsnew/2.0.rst:1074 -#, fuzzy msgid "New modules" msgstr "Nuevos módulos" #: ../Doc/whatsnew/2.0.rst:1076 -#, fuzzy msgid "" "A number of new modules were added. We'll simply list them with brief " "descriptions; consult the 2.0 documentation for the details of a particular " "module." msgstr "" -"Se han añadido varios módulos nuevos. Nos limitaremos a enumerarlos con " +"Se han añadido varios módulos nuevos. Nos limitaremos a enumerarlos con " "breves descripciones; consulte la documentación de la versión 2.0 para " "conocer los detalles de un módulo concreto." #: ../Doc/whatsnew/2.0.rst:1080 -#, fuzzy msgid "" ":mod:`atexit`: For registering functions to be called before the Python " "interpreter exits. Code that currently sets ``sys.exitfunc`` directly should " @@ -2204,7 +2076,6 @@ msgstr "" "la función a llamar al salir. (Contribución de Skip Montanaro)" #: ../Doc/whatsnew/2.0.rst:1086 -#, fuzzy msgid "" ":mod:`codecs`, :mod:`encodings`, :mod:`unicodedata`: Added as part of the " "new Unicode support." @@ -2223,7 +2094,6 @@ msgstr "" "MacMillan y Moshe Zadka)" #: ../Doc/whatsnew/2.0.rst:1093 -#, fuzzy msgid "" ":mod:`gettext`: This module provides internationalization (I18N) and " "localization (L10N) support for Python programs by providing an interface to " @@ -2238,7 +2108,6 @@ msgstr "" "Peter Funk y James Henstridge)" #: ../Doc/whatsnew/2.0.rst:1098 -#, fuzzy msgid "" ":mod:`linuxaudiodev`: Support for the :file:`/dev/audio` device on Linux, a " "twin to the existing :mod:`sunaudiodev` module. (Contributed by Peter Bosch, " @@ -2249,7 +2118,6 @@ msgstr "" "Peter Bosch, con correcciones de Jeremy Hylton)" #: ../Doc/whatsnew/2.0.rst:1102 -#, fuzzy msgid "" ":mod:`mmap`: An interface to memory-mapped files on both Windows and Unix. " "A file's contents can be mapped directly into memory, at which point it " @@ -2259,14 +2127,13 @@ msgid "" "M. Kuchling.)" msgstr "" ":mod:`mmap`: Una interfaz para archivos mapeados en memoria tanto en Windows " -"como en Unix. El contenido de un fichero puede ser mapeado directamente en " +"como en Unix. El contenido de un fichero puede ser mapeado directamente en " "memoria, en cuyo momento se comporta como una cadena mutable, por lo que su " -"contenido puede ser leído y modificado. Incluso pueden pasarse a funciones " +"contenido puede ser leído y modificado. Incluso pueden pasarse a funciones " "que esperan cadenas ordinarias, como el módulo :mod:`re`. (Contribución de " "Sam Rushing, con algunas extensiones de A.M. Kuchling)" #: ../Doc/whatsnew/2.0.rst:1108 -#, fuzzy msgid "" ":mod:`pyexpat`: An interface to the Expat XML parser. (Contributed by Paul " "Prescod.)" @@ -2275,7 +2142,6 @@ msgstr "" "por Paul Prescod.)" #: ../Doc/whatsnew/2.0.rst:1111 -#, fuzzy msgid "" ":mod:`robotparser`: Parse a :file:`robots.txt` file, which is used for " "writing Web spiders that politely avoid certain areas of a Web site. The " @@ -2285,13 +2151,12 @@ msgid "" msgstr "" ":mod:`robotparser`: Analiza un archivo :file:`robots.txt`, que se utiliza " "para escribir arañas web que evitan amablemente ciertas áreas de un sitio " -"web. El analizador acepta el contenido de un archivo :file:`robots.txt`, " +"web. El analizador acepta el contenido de un archivo :file:`robots.txt`, " "construye un conjunto de reglas a partir de él y puede responder a preguntas " -"sobre la capacidad de búsqueda de una URL determinada. (Contribución de " -"Skip Montanaro)" +"sobre la capacidad de búsqueda de una URL determinada. (Contribución de Skip " +"Montanaro)" #: ../Doc/whatsnew/2.0.rst:1117 -#, fuzzy msgid "" ":mod:`tabnanny`: A module/script to check Python source code for ambiguous " "indentation. (Contributed by Tim Peters.)" @@ -2300,16 +2165,14 @@ msgstr "" "en busca de sangrías ambiguas. (Contribuido por Tim Peters.)" #: ../Doc/whatsnew/2.0.rst:1120 -#, fuzzy msgid "" ":mod:`UserString`: A base class useful for deriving objects that behave like " "strings." msgstr "" -":mod:`CadenaUser`: Una clase base útil para derivar objetos que se comportan " +":mod:`UserString`: Una clase base útil para derivar objetos que se comportan " "como cadenas." #: ../Doc/whatsnew/2.0.rst:1123 -#, fuzzy msgid "" ":mod:`webbrowser`: A module that provides a platform independent way to " "launch a web browser on a specific URL. For each platform, various browsers " @@ -2324,14 +2187,13 @@ msgstr "" "plataforma para lanzar un navegador web en una URL específica. Para cada " "plataforma, se prueban varios navegadores en un orden específico. El usuario " "puede modificar el navegador que se lanza estableciendo la variable de " -"entorno *BROWSER*. (Originalmente inspirado por el parche de Eric S. " -"Raymond a :mod:`urllib` que añadía una funcionalidad similar, pero el módulo " -"final proviene de un código originalmente implementado por Fred Drake como :" -"file:`Tools/idle/BrowserControl.py`, y adaptado para la biblioteca estándar " -"por Fred)" +"entorno *BROWSER*. (Originalmente inspirado por el parche de Eric S. Raymond " +"a :mod:`urllib` que añadía una funcionalidad similar, pero el módulo final " +"proviene de un código originalmente implementado por Fred Drake como :file:" +"`Tools/idle/BrowserControl.py`, y adaptado para la biblioteca estándar por " +"Fred)" #: ../Doc/whatsnew/2.0.rst:1132 -#, fuzzy msgid "" ":mod:`_winreg`: An interface to the Windows registry. :mod:`_winreg` is an " "adaptation of functions that have been part of PythonWin since 1995, but has " @@ -2345,21 +2207,19 @@ msgstr "" "Hammond." #: ../Doc/whatsnew/2.0.rst:1137 -#, fuzzy msgid "" ":mod:`zipfile`: A module for reading and writing ZIP-format archives. These " "are archives produced by :program:`PKZIP` on DOS/Windows or :program:`zip` " "on Unix, not to be confused with :program:`gzip`\\ -format files (which are " "supported by the :mod:`gzip` module) (Contributed by James C. Ahlstrom.)" msgstr "" -":mod:`zipfile`: Un módulo para leer y escribir archivos con formato ZIP. Se " +":mod:`zipfile`: Un módulo para leer y escribir archivos con formato ZIP. Se " "trata de archivos producidos por :program:`PKZIP` en DOS/Windows o :program:" "`zip` en Unix, que no deben confundirse con los archivos con formato :" "program:`gzip` (que son compatibles con el módulo :mod:`gzip`) (Contribución " "de James C. Ahlstrom.)" #: ../Doc/whatsnew/2.0.rst:1142 -#, fuzzy msgid "" ":mod:`imputil`: A module that provides a simpler way for writing customized " "import hooks, in comparison to the existing :mod:`ihooks` module. " @@ -2368,16 +2228,14 @@ msgid "" msgstr "" ":mod:`imputil`: Un módulo que proporciona una forma más sencilla de escribir " "ganchos de importación personalizados, en comparación con el módulo :mod:" -"`ihooks` existente. (Implementado por Greg Stein, con mucha discusión en " +"`ihooks` existente. (Implementado por Greg Stein, con mucha discusión en " "python-dev a lo largo del camino)" #: ../Doc/whatsnew/2.0.rst:1150 -#, fuzzy msgid "IDLE Improvements" msgstr "Mejoras en IDLE" #: ../Doc/whatsnew/2.0.rst:1152 -#, fuzzy msgid "" "IDLE is the official Python cross-platform IDE, written using Tkinter. " "Python 2.0 includes IDLE 0.6, which adds a number of new features and " @@ -2385,10 +2243,9 @@ msgid "" msgstr "" "IDLE es el IDE oficial de Python multiplataforma, escrito con Tkinter. " "Python 2.0 incluye IDLE 0.6, que añade una serie de nuevas características y " -"mejoras. Una lista parcial:" +"mejoras. Una lista parcial:" #: ../Doc/whatsnew/2.0.rst:1156 -#, fuzzy msgid "" "UI improvements and optimizations, especially in the area of syntax " "highlighting and auto-indentation." @@ -2397,7 +2254,6 @@ msgstr "" "de resaltado de sintaxis y auto-indentación." #: ../Doc/whatsnew/2.0.rst:1159 -#, fuzzy msgid "" "The class browser now shows more information, such as the top level " "functions in a module." @@ -2406,7 +2262,6 @@ msgstr "" "nivel superior de un módulo." #: ../Doc/whatsnew/2.0.rst:1162 -#, fuzzy msgid "" "Tab width is now a user settable option. When opening an existing Python " "file, IDLE automatically detects the indentation conventions, and adapts." @@ -2416,7 +2271,6 @@ msgstr "" "convenciones de sangría y se adapta." #: ../Doc/whatsnew/2.0.rst:1165 -#, fuzzy msgid "" "There is now support for calling browsers on various platforms, used to open " "the Python documentation in a browser." @@ -2425,7 +2279,6 @@ msgstr "" "utilizado para abrir la documentación de Python en un navegador." #: ../Doc/whatsnew/2.0.rst:1168 -#, fuzzy msgid "" "IDLE now has a command line, which is largely similar to the vanilla Python " "interpreter." @@ -2434,24 +2287,20 @@ msgstr "" "intérprete de Python vainilla." #: ../Doc/whatsnew/2.0.rst:1171 -#, fuzzy msgid "Call tips were added in many places." msgstr "Se añadieron consejos de llamada en muchos lugares." #: ../Doc/whatsnew/2.0.rst:1173 -#, fuzzy msgid "IDLE can now be installed as a package." msgstr "Ahora IDLE puede instalarse como un paquete." #: ../Doc/whatsnew/2.0.rst:1175 -#, fuzzy msgid "In the editor window, there is now a line/column bar at the bottom." msgstr "" "En la ventana del editor, ahora hay una barra de líneas/columnas en la parte " "inferior." #: ../Doc/whatsnew/2.0.rst:1177 -#, fuzzy msgid "" "Three new keystroke commands: Check module (:kbd:`Alt-F5`), Import module (:" "kbd:`F5`) and Run script (:kbd:`Ctrl-F5`)." @@ -2471,7 +2320,7 @@ msgid "" "developed." msgstr "" "Se han eliminado algunos módulos porque son obsoletos, o porque ahora hay " -"mejores formas de hacer lo mismo. El módulo :mod:`stdwin` ha desaparecido; " +"mejores formas de hacer lo mismo. El módulo :mod:`stdwin` ha desaparecido; " "era para un conjunto de herramientas de ventanas independientes de la " "plataforma que ya no se desarrolla." @@ -2487,7 +2336,7 @@ msgstr "" "Varios módulos han sido trasladados al subdirectorio :file:`lib-old`: :mod:" "`cmp`, :mod:`cmpcache`, :mod:`dircmp`, :mod:`dump`, :mod:`find`, :mod:" "`grep`, :mod:`packmail`, :mod:`poly`, :mod:`util`, :mod:`whatsound`, :mod:" -"`zmod`. Si tiene código que depende de un módulo que ha sido movido a :file:" +"`zmod`. Si tiene código que depende de un módulo que ha sido movido a :file:" "`lib-old`, puede simplemente añadir ese directorio a ``sys.path`` para " "recuperarlo, pero se recomienda actualizar cualquier código que utilice " "estos módulos."