# Copyright (C) 2001-2020, Python Software Foundation
# This file is distributed under the same license as the Python package.
# Maintained by the python-doc-es workteam.
# docs-es@python.org /
# https://mail.python.org/mailman3/lists/docs-es.python.org/
# Check https://github.com/python/python-docs-es/blob/3.8/TRANSLATORS to
# get the list of volunteers
#
msgid ""
msgstr ""
"Project-Id-Version: Python 3.8\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-10-12 19:43+0200\n"
"PO-Revision-Date: 2024-01-21 18:29+0100\n"
"Last-Translator: \n"
"Language-Team: python-doc-es\n"
"Language: es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"Generated-By: Babel 2.13.0\n"
"X-Generator: Poedit 3.0.1\n"
#: ../Doc/whatsnew/2.6.rst:5
msgid "What's New in Python 2.6"
msgstr "Qué hay de nuevo en Python 2.6"
#: ../Doc/whatsnew/2.6.rst
msgid "Author"
msgstr "Autor"
#: ../Doc/whatsnew/2.6.rst:9
msgid "A.M. Kuchling (amk at amk.ca)"
msgstr "A.M. Kuchling (amk arroba amk.ca)"
#: ../Doc/whatsnew/2.6.rst:52
msgid ""
"This article explains the new features in Python 2.6, released on October 1, "
"2008. The release schedule is described in :pep:`361`."
msgstr ""
"Este artículo explica las nuevas funciones de Python 2.6, publicadas el 1 de "
"octubre de 2008. El programa de publicación se describe en :pep:`361`."
#: ../Doc/whatsnew/2.6.rst:55
msgid ""
"The major theme of Python 2.6 is preparing the migration path to Python 3.0, "
"a major redesign of the language. Whenever possible, Python 2.6 "
"incorporates new features and syntax from 3.0 while remaining compatible "
"with existing code by not removing older features or syntax. When it's not "
"possible to do that, Python 2.6 tries to do what it can, adding "
"compatibility functions in a :mod:`future_builtins` module and a :option:"
"`!-3` switch to warn about usages that will become unsupported in 3.0."
msgstr ""
"El tema principal de Python 2.6 es preparar el camino de migración a Python "
"3.0, un importante rediseño del lenguaje. Siempre que sea posible, Python "
"2.6 incorpora nuevas características y sintaxis de 3.0 mientras sigue siendo "
"compatible con el código existente al no eliminar características o sintaxis "
"más antiguas. Cuando no es posible hacer eso, Python 2.6 intenta hacer lo "
"que puede, agregando funciones de compatibilidad en el módulo :mod:"
"`future_builtins` y un interruptor :option:`!-3` para advertir sobre usos "
"que dejarán de ser compatibles en 3.0 ."
#: ../Doc/whatsnew/2.6.rst:64
msgid ""
"Some significant new packages have been added to the standard library, such "
"as the :mod:`multiprocessing` and :mod:`json` modules, but there aren't many "
"new features that aren't related to Python 3.0 in some way."
msgstr ""
"Se han agregado algunos paquetes nuevos importantes a la biblioteca "
"estándar, como los módulos :mod:`multiprocessing` y :mod:`json`, pero no hay "
"muchas características nuevas que no estén relacionadas con Python 3.0 de "
"alguna manera."
#: ../Doc/whatsnew/2.6.rst:69
msgid ""
"Python 2.6 also sees a number of improvements and bugfixes throughout the "
"source. A search through the change logs finds there were 259 patches "
"applied and 612 bugs fixed between Python 2.5 and 2.6. Both figures are "
"likely to be underestimates."
msgstr ""
"Python 2.6 también incluye una serie de mejoras y correcciones de errores en "
"el código fuente. Una búsqueda en los registros de cambios encuentra que se "
"aplicaron 259 parches y se corrigieron 612 errores entre Python 2.5 y 2.6. "
"Es probable que ambas cifras estén subestimadas."
#: ../Doc/whatsnew/2.6.rst:74
msgid ""
"This article doesn't attempt to provide a complete specification of the new "
"features, but instead provides a convenient overview. For full details, you "
"should refer to the documentation for Python 2.6. If you want to understand "
"the rationale for the design and implementation, refer to the PEP for a "
"particular new feature. Whenever possible, \"What's New in Python\" links to "
"the bug/patch item for each change."
msgstr ""
"Este artículo no intenta proporcionar una especificación completa de las "
"nuevas características, sino que proporciona una conveniente descripción "
"general. Para obtener detalles completos, debe consultar la documentación de "
"Python 2.6. Si desea comprender la justificación del diseño y la "
"implementación, consulte el PEP de una característica nueva en particular. "
"Siempre que sea posible, \"Qué hay de nuevo en Python\" enlaza con el "
"elemento de error / parche para cada cambio."
#: ../Doc/whatsnew/2.6.rst:90
msgid "Python 3.0"
msgstr "Python 3.0"
#: ../Doc/whatsnew/2.6.rst:92
msgid ""
"The development cycle for Python versions 2.6 and 3.0 was synchronized, with "
"the alpha and beta releases for both versions being made on the same days. "
"The development of 3.0 has influenced many features in 2.6."
msgstr ""
"El ciclo de desarrollo de las versiones 2.6 y 3.0 de Python se sincronizó, y "
"las versiones alfa y beta de ambos lanzamientos se realizaron los mismos "
"días. El desarrollo de 3.0 ha influido en muchas características de 2.6."
#: ../Doc/whatsnew/2.6.rst:97
msgid ""
"Python 3.0 is a far-ranging redesign of Python that breaks compatibility "
"with the 2.x series. This means that existing Python code will need some "
"conversion in order to run on Python 3.0. However, not all the changes in "
"3.0 necessarily break compatibility. In cases where new features won't "
"cause existing code to break, they've been backported to 2.6 and are "
"described in this document in the appropriate place. Some of the 3.0-"
"derived features are:"
msgstr ""
"Python 3.0 es un rediseño de Python de gran alcance que rompe la "
"compatibilidad con la serie 2.x. Esto significa que el código Python "
"existente necesitará alguna conversión para poder ejecutarse en Python 3.0. "
"Sin embargo, no todos los cambios en 3.0 rompen necesariamente la "
"compatibilidad. En los casos en que las nuevas funciones no provoquen la "
"rotura del código existente, se han actualizado a 2.6 y se describen en este "
"documento en el lugar correspondiente. Algunas de las características "
"derivadas de 3.0 son:"
#: ../Doc/whatsnew/2.6.rst:106
msgid ""
"A :meth:`__complex__` method for converting objects to a complex number."
msgstr ""
"El método :meth:`__complex__` para convertir objetos en un número complejo."
#: ../Doc/whatsnew/2.6.rst:107
msgid "Alternate syntax for catching exceptions: ``except TypeError as exc``."
msgstr ""
"Sintaxis alternativa para detectar excepciones: ``except TypeError as exc``."
#: ../Doc/whatsnew/2.6.rst:108
msgid ""
"The addition of :func:`functools.reduce` as a synonym for the built-in :func:"
"`reduce` function."
msgstr ""
"La adición de :func:`functools.reduce` como sinónimo de la función "
"incorporada :func:`reduce`."
#: ../Doc/whatsnew/2.6.rst:111
msgid ""
"Python 3.0 adds several new built-in functions and changes the semantics of "
"some existing builtins. Functions that are new in 3.0 such as :func:`bin` "
"have simply been added to Python 2.6, but existing builtins haven't been "
"changed; instead, the :mod:`future_builtins` module has versions with the "
"new 3.0 semantics. Code written to be compatible with 3.0 can do ``from "
"future_builtins import hex, map`` as necessary."
msgstr ""
"Python 3.0 agrega varias funciones integradas nuevas y cambia la semántica "
"de algunas integradas existentes. Las funciones que son nuevas en 3.0 como :"
"func:`bin` simplemente se han agregado a Python 2.6, pero las funciones "
"existentes no se han cambiado; en cambio, el módulo :mod:`future_builtins` "
"tiene versiones con la nueva semántica 3.0. El código escrito puede ser "
"compatible con 3.0 haciendo ``from future_builtins import hex, map`` según "
"sea necesario."
#: ../Doc/whatsnew/2.6.rst:119
msgid ""
"A new command-line switch, :option:`!-3`, enables warnings about features "
"that will be removed in Python 3.0. You can run code with this switch to "
"see how much work will be necessary to port code to 3.0. The value of this "
"switch is available to Python code as the boolean variable :data:`sys."
"py3kwarning`, and to C extension code as :c:data:`Py_Py3kWarningFlag`."
msgstr ""
"Un nuevo modificador de línea de comandos, :option:`!-3`, habilita "
"advertencias sobre características que se eliminarán en Python 3.0. Puede "
"ejecutar código con este modificador para ver cuánto trabajo será necesario "
"para migrar el código a 3.0. El valor de este modificador está disponible "
"para el código Python como la variable booleana :data:`sys.py3kwarning`, y "
"para el código de extensión C como :c:data:`Py_Py3kWarningFlag`."
#: ../Doc/whatsnew/2.6.rst:128
msgid ""
"The 3\\ *xxx* series of PEPs, which contains proposals for Python 3.0. :pep:"
"`3000` describes the development process for Python 3.0. Start with :pep:"
"`3100` that describes the general goals for Python 3.0, and then explore the "
"higher-numbered PEPS that propose specific features."
msgstr ""
"Las series 3xxx de PEP, que contienen propuestas para Python 3.0. :pep:"
"`3000` describe el proceso de desarrollo de Python 3.0. Empiece con :pep:"
"`3100` que describe los objetivos generales de Python 3.0, y luego explore "
"los PEPS con números más altos que proponen características específicas."
#: ../Doc/whatsnew/2.6.rst:136
msgid "Changes to the Development Process"
msgstr "Cambios en el proceso de desarrollo"
#: ../Doc/whatsnew/2.6.rst:138
msgid ""
"While 2.6 was being developed, the Python development process underwent two "
"significant changes: we switched from SourceForge's issue tracker to a "
"customized Roundup installation, and the documentation was converted from "
"LaTeX to reStructuredText."
msgstr ""
"Mientras se desarrollaba 2.6, el proceso de desarrollo de Python experimentó "
"dos cambios significativos: cambiamos del seguidor de incidentes (*issue "
"tracker*) de SourceForge a una instalación personalizada de Roundup, y la "
"documentación se convirtió de LaTeX a reStructuredText."
#: ../Doc/whatsnew/2.6.rst:145
msgid "New Issue Tracker: Roundup"
msgstr "Nuevo seguidor de incidentes: Roundup"
#: ../Doc/whatsnew/2.6.rst:147
msgid ""
"For a long time, the Python developers had been growing increasingly annoyed "
"by SourceForge's bug tracker. SourceForge's hosted solution doesn't permit "
"much customization; for example, it wasn't possible to customize the life "
"cycle of issues."
msgstr ""
"Durante mucho tiempo, los desarrolladores de Python estaban cada vez más "
"molestos por el seguidor de errores de SourceForge. La solución alojada en "
"SourceForge no permite mucha personalización; por ejemplo, no fue posible "
"personalizar el ciclo de vida de los problemas."
#: ../Doc/whatsnew/2.6.rst:152
msgid ""
"The infrastructure committee of the Python Software Foundation therefore "
"posted a call for issue trackers, asking volunteers to set up different "
"products and import some of the bugs and patches from SourceForge. Four "
"different trackers were examined: `Jira `__, `Launchpad `__, `Roundup `__, and `Trac `__. The "
"committee eventually settled on Jira and Roundup as the two candidates. "
"Jira is a commercial product that offers no-cost hosted instances to free-"
"software projects; Roundup is an open-source project that requires "
"volunteers to administer it and a server to host it."
msgstr ""
"Por lo tanto, el comité de infraestructura de la Python Software Foundation "
"publicó una convocatoria de rastreadores de problemas, solicitando "
"voluntarios para configurar diferentes productos e importar algunos de los "
"errores y parches de SourceForge. Se examinaron cuatro rastreadores "
"diferentes: `Jira `__, `Launchpad "
"`__, `Roundup `__ y "
"`Trac `__. El comité finalmente se decidió por "
"Jira y Roundup como los dos candidatos. Jira es un producto comercial que "
"ofrece instancias alojadas sin costo para proyectos de software libre; "
"Roundup es un proyecto de código abierto que requiere voluntarios para "
"administrarlo y un servidor para alojarlo."
#: ../Doc/whatsnew/2.6.rst:166
msgid ""
"After posting a call for volunteers, a new Roundup installation was set up "
"at https://bugs.python.org. One installation of Roundup can host multiple "
"trackers, and this server now also hosts issue trackers for Jython and for "
"the Python web site. It will surely find other uses in the future. Where "
"possible, this edition of \"What's New in Python\" links to the bug/patch "
"item for each change."
msgstr ""
"Después de publicar una llamada para voluntarios, se configuró una nueva "
"instalación de Roundup en https://bugs.python.org. Una instalación de "
"Roundup puede alojar varios seguidores, y este servidor ahora también aloja "
"seguidores de problemas para Jython y para el sitio web de Python. "
"Seguramente encontrará otros usos en el futuro. Siempre que sea posible, "
"esta edición de \"Qué hay de nuevo en Python\" se vincula al elemento de "
"error/parche para cada cambio."
#: ../Doc/whatsnew/2.6.rst:174
msgid ""
"Hosting of the Python bug tracker is kindly provided by `Upfront Systems "
"`__ of Stellenbosch, South Africa. Martin "
"von Löwis put a lot of effort into importing existing bugs and patches from "
"SourceForge; his scripts for this import operation are at ``https://svn."
"python.org/view/tracker/importer/`` and may be useful to other projects "
"wishing to move from SourceForge to Roundup."
msgstr ""
"`Upfront Systems `__ de Stellenbosch, "
"Sudáfrica, proporciona amablemente el alojamiento del rastreador de errores "
"de Python. Martin von Löwis se esforzó mucho en importar errores y parches "
"existentes desde SourceForge; Sus scripts para esta operación de importación "
"están en ``https://svn.python.org/view/tracker/importer/`` y pueden ser "
"útiles para otros proyectos que deseen pasar de SourceForge a Roundup."
#: ../Doc/whatsnew/2.6.rst:185
msgid "https://bugs.python.org"
msgstr "https://bugs.python.org"
#: ../Doc/whatsnew/2.6.rst:185
msgid "The Python bug tracker."
msgstr "El seguidor de errores de Python."
#: ../Doc/whatsnew/2.6.rst:188
msgid "https://bugs.jython.org:"
msgstr "https://bugs.jython.org:"
#: ../Doc/whatsnew/2.6.rst:188
msgid "The Jython bug tracker."
msgstr "El seguidor de errores de Jython."
#: ../Doc/whatsnew/2.6.rst:191
msgid "https://roundup.sourceforge.io/"
msgstr "https://roundup.sourceforge.io/"
#: ../Doc/whatsnew/2.6.rst:191
msgid "Roundup downloads and documentation."
msgstr "Descargas y documentación de Roundup."
#: ../Doc/whatsnew/2.6.rst:193
msgid "https://svn.python.org/view/tracker/importer/"
msgstr "https://svn.python.org/view/tracker/importer/"
#: ../Doc/whatsnew/2.6.rst:194
msgid "Martin von Löwis's conversion scripts."
msgstr "Scripts de conversión de Martin von Löwis."
#: ../Doc/whatsnew/2.6.rst:197
msgid "New Documentation Format: reStructuredText Using Sphinx"
msgstr "Nuevo formato de documentación: texto reestructurado con Sphinx"
#: ../Doc/whatsnew/2.6.rst:199
msgid ""
"The Python documentation was written using LaTeX since the project started "
"around 1989. In the 1980s and early 1990s, most documentation was printed "
"out for later study, not viewed online. LaTeX was widely used because it "
"provided attractive printed output while remaining straightforward to write "
"once the basic rules of the markup were learned."
msgstr ""
"La documentación de Python se escribió usando LaTeX desde que el proyecto "
"comenzó alrededor de 1989. En la década de 1980 y principios de la de 1990, "
"la mayor parte de la documentación se imprimió para su estudio posterior, no "
"se vio en línea. LaTeX fue ampliamente utilizado porque proporcionaba una "
"salida impresa atractiva sin dejar de ser sencillo de escribir una vez que "
"se aprendían las reglas básicas de marcado."
#: ../Doc/whatsnew/2.6.rst:206
msgid ""
"Today LaTeX is still used for writing publications destined for printing, "
"but the landscape for programming tools has shifted. We no longer print out "
"reams of documentation; instead, we browse through it online and HTML has "
"become the most important format to support. Unfortunately, converting LaTeX "
"to HTML is fairly complicated and Fred L. Drake Jr., the long-time Python "
"documentation editor, spent a lot of time maintaining the conversion "
"process. Occasionally people would suggest converting the documentation "
"into SGML and later XML, but performing a good conversion is a major task "
"and no one ever committed the time required to finish the job."
msgstr ""
"Hoy en día, LaTeX todavía se usa para escribir publicaciones destinadas a la "
"impresión, pero el panorama de las herramientas de programación ha cambiado. "
"Ya no imprimimos montones de documentación; en su lugar, lo navegamos en "
"línea y HTML se ha convertido en el formato más importante para dar soporte. "
"Desafortunadamente, convertir LaTeX a HTML es bastante complicado y Fred L. "
"Drake Jr., el editor de documentación de Python desde hace mucho tiempo, "
"pasó mucho tiempo manteniendo el proceso de conversión. De vez en cuando, la "
"gente sugeriría convertir la documentación a SGML y luego a XML, pero "
"realizar una buena conversión es una tarea importante y nadie comprometió el "
"tiempo necesario para terminar el trabajo."
#: ../Doc/whatsnew/2.6.rst:217
msgid ""
"During the 2.6 development cycle, Georg Brandl put a lot of effort into "
"building a new toolchain for processing the documentation. The resulting "
"package is called Sphinx, and is available from https://www.sphinx-doc.org/."
msgstr ""
"Durante el ciclo de desarrollo 2.6, Georg Brandl se esforzó mucho en "
"construir una nueva cadena de herramientas para procesar la documentación. "
"El paquete resultante se llama Sphinx y está disponible en https://www."
"sphinx-doc.org/."
#: ../Doc/whatsnew/2.6.rst:222
msgid ""
"Sphinx concentrates on HTML output, producing attractively styled and modern "
"HTML; printed output is still supported through conversion to LaTeX. The "
"input format is reStructuredText, a markup syntax supporting custom "
"extensions and directives that is commonly used in the Python community."
msgstr ""
"Sphinx se concentra en la salida HTML, produciendo HTML moderno y con un "
"estilo atractivo; la salida impresa todavía se admite mediante la conversión "
"a LaTeX. El formato de entrada es reStructuredText, una sintaxis de marcado "
"que admite extensiones y directivas personalizadas que se usa comúnmente en "
"la comunidad de Python."
#: ../Doc/whatsnew/2.6.rst:228
msgid ""
"Sphinx is a standalone package that can be used for writing, and almost two "
"dozen other projects (`listed on the Sphinx web site `__) have adopted Sphinx as their documentation "
"tool."
msgstr ""
"Sphinx es un paquete independiente que se puede usar para escribir, y casi "
"dos docenas de otros proyectos (`enumerados en el sitio web de Sphinx "
"`__) han adoptado Sphinx "
"como su herramienta de documentación."
#: ../Doc/whatsnew/2.6.rst:236
msgid "`Documenting Python `__"
msgstr "`Documentando Python `__"
#: ../Doc/whatsnew/2.6.rst:236
msgid "Describes how to write for Python's documentation."
msgstr "Describe cómo escribir para la documentación de Python."
#: ../Doc/whatsnew/2.6.rst:239
msgid "`Sphinx `__"
msgstr "`Sphinx `__"
#: ../Doc/whatsnew/2.6.rst:239
msgid "Documentation and code for the Sphinx toolchain."
msgstr "Documentación y código para la cadena de herramientas Sphinx."
#: ../Doc/whatsnew/2.6.rst:241
msgid "`Docutils `__"
msgstr "`Docutils `__"
#: ../Doc/whatsnew/2.6.rst:242
msgid "The underlying reStructuredText parser and toolset."
msgstr ""
"El analizador sintáctico y el conjunto de herramientas *reStructuredText* "
"subyacentes."
#: ../Doc/whatsnew/2.6.rst:248
msgid "PEP 343: The 'with' statement"
msgstr "PEP 343: La sentencia *'with'*"
#: ../Doc/whatsnew/2.6.rst:250
msgid ""
"The previous version, Python 2.5, added the ':keyword:`with`' statement as "
"an optional feature, to be enabled by a ``from __future__ import "
"with_statement`` directive. In 2.6 the statement no longer needs to be "
"specially enabled; this means that :keyword:`!with` is now always a "
"keyword. The rest of this section is a copy of the corresponding section "
"from the \"What's New in Python 2.5\" document; if you're familiar with the "
"':keyword:`!with`' statement from Python 2.5, you can skip this section."
msgstr ""
"La versión anterior, Python 2.5, agregó la instrucción ':keyword:`with`' "
"como una característica opcional, para ser habilitada por una directiva "
"``from __future__ import with_statement``. En 2.6, la instrucción ya no "
"necesita estar habilitada especialmente; esto significa que ahora :keyword:`!"
"with` es siempre una palabra clave. El resto de esta sección es una copia de "
"la sección correspondiente del documento \"Qué hay de nuevo en Python 2.5\"; "
"si está familiarizado con la declaración ':keyword:`!with`' de Python 2.5, "
"puede omitir esta sección."
#: ../Doc/whatsnew/2.6.rst:259
msgid ""
"The ':keyword:`with`' statement clarifies code that previously would use "
"``try...finally`` blocks to ensure that clean-up code is executed. In this "
"section, I'll discuss the statement as it will commonly be used. In the "
"next section, I'll examine the implementation details and show how to write "
"objects for use with this statement."
msgstr ""
"La sentencia ':keyword:`with`' resuelve el código que anteriormente usaría "
"bloques ``try...finally`` para garantizar que el código de limpieza se "
"ejecute. En esta sección, discutiré como se usará comúnmente la declaración. "
"En la siguiente sección, examinaré los detalles de la implementación y "
"mostraré cómo escribir objetos para usar con esta declaración."
#: ../Doc/whatsnew/2.6.rst:265
msgid ""
"The ':keyword:`with`' statement is a control-flow structure whose basic "
"structure is::"
msgstr ""
"La sentencia ':keyword:`with`' es una estructura de control de flujo cuya "
"estructura básica es::"
#: ../Doc/whatsnew/2.6.rst:271
msgid ""
"The expression is evaluated, and it should result in an object that supports "
"the context management protocol (that is, has :meth:`__enter__` and :meth:"
"`__exit__` methods)."
msgstr ""
"La expresión se evalúa y debe dar como resultado un objeto que admita el "
"protocolo de administración de contexto (es decir, tiene los métodos :meth:"
"`__enter__` y :meth:`__exit__`)."
#: ../Doc/whatsnew/2.6.rst:275
msgid ""
"The object's :meth:`__enter__` is called before *with-block* is executed and "
"therefore can run set-up code. It also may return a value that is bound to "
"the name *variable*, if given. (Note carefully that *variable* is *not* "
"assigned the result of *expression*.)"
msgstr ""
"El objeto :meth:`__enter__` se llama antes de que se ejecute *with-block* y, "
"por lo tanto, se puede ejecutar código de configuración. También, si se "
"proporciona, puede retornar un valor que esté vinculado al nombre "
"*variable*. (Tenga en cuenta que a la *variable* *no* se le asigna el "
"resultado de la *expression*)."
#: ../Doc/whatsnew/2.6.rst:280
msgid ""
"After execution of the *with-block* is finished, the object's :meth:"
"`__exit__` method is called, even if the block raised an exception, and can "
"therefore run clean-up code."
msgstr ""
"Una vez finalizada la ejecución de *with-block*, se llama al método :meth:"
"`__exit__` del objeto, incluso si el bloque generó una excepción y, por lo "
"tanto, puede ejecutar código de limpieza."
#: ../Doc/whatsnew/2.6.rst:284
msgid ""
"Some standard Python objects now support the context management protocol and "
"can be used with the ':keyword:`with`' statement. File objects are one "
"example::"
msgstr ""
"Algunos objetos estándar de Python ahora admiten el protocolo de "
"administración de contexto y se pueden usar con la sentencia ':keyword:"
"`with`'. Los objetos de archivo son un ejemplo::"
#: ../Doc/whatsnew/2.6.rst:292
msgid ""
"After this statement has executed, the file object in *f* will have been "
"automatically closed, even if the :keyword:`for` loop raised an exception "
"part-way through the block."
msgstr ""
"Después de que se haya ejecutado esta sentencia, el objeto de archivo en *f* "
"se habrá cerrado automáticamente, incluso si el bucle :keyword:`for` generó "
"una excepción en la mitad del bloque."
#: ../Doc/whatsnew/2.6.rst:298
msgid ""
"In this case, *f* is the same object created by :func:`open`, because :meth:"
"`file.__enter__` returns *self*."
msgstr ""
"En este caso, *f* es el mismo objeto creado por :func:`open`, porque :meth:"
"`file.__enter__` retorna *self*."
#: ../Doc/whatsnew/2.6.rst:301
msgid ""
"The :mod:`threading` module's locks and condition variables also support "
"the ':keyword:`with`' statement::"
msgstr ""
"Los *locks* y las condiciones variables del módulo :mod:`threading` también "
"admiten la sentencia ':keyword:`with`'::"
#: ../Doc/whatsnew/2.6.rst:309
msgid ""
"The lock is acquired before the block is executed and always released once "
"the block is complete."
msgstr ""
"El *lock* se adquiere antes de que se ejecute el bloque y siempre se libera "
"una vez que este se completa."
#: ../Doc/whatsnew/2.6.rst:312
msgid ""
"The :func:`localcontext` function in the :mod:`decimal` module makes it easy "
"to save and restore the current decimal context, which encapsulates the "
"desired precision and rounding characteristics for computations::"
msgstr ""
"La función :func:`localcontext` en el módulo :mod:`decimal` facilita guardar "
"y restaurar el contexto decimal actual, que encapsula la precisión deseada y "
"las características de redondeo para los cálculos::"
#: ../Doc/whatsnew/2.6.rst:331
msgid "Writing Context Managers"
msgstr "Escribiendo gestores de contexto"
#: ../Doc/whatsnew/2.6.rst:333
msgid ""
"Under the hood, the ':keyword:`with`' statement is fairly complicated. Most "
"people will only use ':keyword:`!with`' in company with existing objects and "
"don't need to know these details, so you can skip the rest of this section "
"if you like. Authors of new objects will need to understand the details of "
"the underlying implementation and should keep reading."
msgstr ""
"Por detrás, la sentencia ':keyword:`with`' es bastante complicada. La "
"mayoría de las personas solo usarán ':keyword:`!with`' en compañía de "
"objetos existentes y no necesitan conocer estos detalles, por lo que puede "
"omitir el resto de esta sección si lo desea. Los autores de nuevos objetos "
"deberán comprender los detalles de la implementación subyacente y deben "
"seguir leyendo."
#: ../Doc/whatsnew/2.6.rst:339
msgid "A high-level explanation of the context management protocol is:"
msgstr "Una explicación de alto nivel del protocolo de gestor de contexto es:"
#: ../Doc/whatsnew/2.6.rst:341
msgid ""
"The expression is evaluated and should result in an object called a "
"\"context manager\". The context manager must have :meth:`__enter__` and :"
"meth:`__exit__` methods."
msgstr ""
"La expresión se evalúa y debería dar como resultado un objeto llamado "
"\"gestor de contexto\". El gestor de contexto debe tener los métodos :meth:"
"`__enter__` y :meth:`__exit__`."
#: ../Doc/whatsnew/2.6.rst:345
msgid ""
"The context manager's :meth:`__enter__` method is called. The value "
"returned is assigned to *VAR*. If no ``as VAR`` clause is present, the "
"value is simply discarded."
msgstr ""
"Se llama al método :meth:`__enter__` del gestor de contexto. El valor "
"retornado se asigna a *VAR*. Si no hay una cláusula ``as VAR``, el valor "
"simplemente se descarta."
#: ../Doc/whatsnew/2.6.rst:349
msgid "The code in *BLOCK* is executed."
msgstr "Se ejecuta el código en *BLOCK*."
#: ../Doc/whatsnew/2.6.rst:351
msgid ""
"If *BLOCK* raises an exception, the context manager's :meth:`__exit__` "
"method is called with three arguments, the exception details (``type, value, "
"traceback``, the same values returned by :func:`sys.exc_info`, which can "
"also be ``None`` if no exception occurred). The method's return value "
"controls whether an exception is re-raised: any false value re-raises the "
"exception, and ``True`` will result in suppressing it. You'll only rarely "
"want to suppress the exception, because if you do the author of the code "
"containing the ':keyword:`with`' statement will never realize anything went "
"wrong."
msgstr ""
"Si *BLOCK* lanza una excepción, se llama al método :meth:`__exit__` del "
"gestor de contexto con tres argumentos, los detalles de la excepción "
"(``type, value, traceback``, los mismos valores retornados por :func:`sys."
"exc_info`, que también puede ser ``None`` si no se produjo ninguna "
"excepción). El valor de retorno del método controla si se vuelve a generar "
"una excepción: cualquier valor *false* vuelve a lanzar la excepción, y "
"``True`` resultará en inhibirla. Rara vez querrá suprimir la excepción, "
"porque si lo hace, el autor del código que contenga la sentencia ':keyword:"
"`with`' nunca se dará cuenta de que algo salió mal."
#: ../Doc/whatsnew/2.6.rst:360
msgid ""
"If *BLOCK* didn't raise an exception, the :meth:`__exit__` method is still "
"called, but *type*, *value*, and *traceback* are all ``None``."
msgstr ""
"Si *BLOCK* no lanzó una excepción, el método :meth:`__exit__` continúa "
"llamándose, pero *type*, *value* y *traceback* son todos ``None``."
#: ../Doc/whatsnew/2.6.rst:363
msgid ""
"Let's think through an example. I won't present detailed code but will only "
"sketch the methods necessary for a database that supports transactions."
msgstr ""
"Pensemos en un ejemplo. No presentaré un código detallado, solo bosquejaré "
"los métodos necesarios para una base de datos que admita transacciones."
#: ../Doc/whatsnew/2.6.rst:366
msgid ""
"(For people unfamiliar with database terminology: a set of changes to the "
"database are grouped into a transaction. Transactions can be either "
"committed, meaning that all the changes are written into the database, or "
"rolled back, meaning that the changes are all discarded and the database is "
"unchanged. See any database textbook for more information.)"
msgstr ""
"(Para las personas que no están familiarizadas con la terminología de la "
"base de datos: un conjunto de cambios en la base de datos se agrupa en una "
"transacción. Las transacciones pueden confirmarse, lo que significa que "
"todos los cambios se escriben en la base de datos, o deshacerse, lo que "
"significa que todos los cambios se descartan y la base de datos no ha "
"cambiado. Consulte cualquier libro de texto de base de datos para obtener "
"más información.)"
#: ../Doc/whatsnew/2.6.rst:372
msgid ""
"Let's assume there's an object representing a database connection. Our goal "
"will be to let the user write code like this::"
msgstr ""
"Supongamos que hay un objeto que representa una conexión de base de datos. "
"Nuestro objetivo será permitir que el usuario escriba un código como este::"
#: ../Doc/whatsnew/2.6.rst:381
msgid ""
"The transaction should be committed if the code in the block runs flawlessly "
"or rolled back if there's an exception. Here's the basic interface for :"
"class:`DatabaseConnection` that I'll assume::"
msgstr ""
"La transacción debe confirmarse si el código del bloque se ejecuta sin "
"problemas o revertirse si hay una excepción. Aquí está la interfaz básica "
"para :class:`DatabaseConnection` que asumiré::"
#: ../Doc/whatsnew/2.6.rst:394
msgid ""
"The :meth:`__enter__` method is pretty easy, having only to start a new "
"transaction. For this application the resulting cursor object would be a "
"useful result, so the method will return it. The user can then add ``as "
"cursor`` to their ':keyword:`with`' statement to bind the cursor to a "
"variable name. ::"
msgstr ""
"El método :meth:`__enter__` es bastante fácil, ya que solo tiene que iniciar "
"una nueva transacción. Para esta aplicación, el objeto cursor resultante "
"sería un resultado útil, por lo que el método lo retornará. Luego, el "
"usuario puede agregar ``as cursor`` a su sentencia ':keyword:`with`' para "
"vincular el cursor a un nombre de variable. ::"
#: ../Doc/whatsnew/2.6.rst:406
msgid ""
"The :meth:`__exit__` method is the most complicated because it's where most "
"of the work has to be done. The method has to check if an exception "
"occurred. If there was no exception, the transaction is committed. The "
"transaction is rolled back if there was an exception."
msgstr ""
"El método :meth:`__exit__` es el más complicado porque es donde se debe "
"realizar la mayor parte del trabajo. El método debe verificar si ocurrió una "
"excepción. Si no hubo excepción, la transacción se confirma. La transacción "
"se revierte si hubo una excepción."
#: ../Doc/whatsnew/2.6.rst:411
msgid ""
"In the code below, execution will just fall off the end of the function, "
"returning the default value of ``None``. ``None`` is false, so the "
"exception will be re-raised automatically. If you wished, you could be more "
"explicit and add a :keyword:`return` statement at the marked location. ::"
msgstr ""
"En el siguiente código, la ejecución simplemente caerá al final de la "
"función, retornando el valor predeterminado ``None``. ``None`` es falso, por "
"lo que la excepción se volverá a lanzar automáticamente. Si lo desea, puede "
"ser más explícito y agregar una sentencia :keyword:`return` en la ubicación "
"marcada. ::"
#: ../Doc/whatsnew/2.6.rst:431
msgid "The contextlib module"
msgstr "El módulo contextlib"
#: ../Doc/whatsnew/2.6.rst:433
msgid ""
"The :mod:`contextlib` module provides some functions and a decorator that "
"are useful when writing objects for use with the ':keyword:`with`' statement."
msgstr ""
"El módulo :mod:`contextlib` proporciona algunas funciones y un decorador que "
"son útiles al escribir objetos para usar con la sentencia ':keyword:`with`'."
#: ../Doc/whatsnew/2.6.rst:436
msgid ""
"The decorator is called :func:`contextmanager`, and lets you write a single "
"generator function instead of defining a new class. The generator should "
"yield exactly one value. The code up to the :keyword:`yield` will be "
"executed as the :meth:`__enter__` method, and the value yielded will be the "
"method's return value that will get bound to the variable in the ':keyword:"
"`with`' statement's :keyword:`!as` clause, if any. The code after the :"
"keyword:`!yield` will be executed in the :meth:`__exit__` method. Any "
"exception raised in the block will be raised by the :keyword:`!yield` "
"statement."
msgstr ""
"El decorador se llama :func:`contextmanager`, y te permite escribir una "
"única función generadora en lugar de definir una clase nueva. El generador "
"debería producir exactamente un valor. El código hasta :keyword:`yield` se "
"ejecutará como el método :meth:`__enter__`, y el valor obtenido será el "
"valor de retorno del método que se vinculará a la variable en la clausula :"
"keyword:`!as` (si la hay) de la sentencia ':keyword:`with`'. El código "
"después de :keyword:`!yield` se ejecutará en el método :meth:`__exit__` . "
"Cualquier excepción lanzada en el bloque será generada por la sentencia :"
"keyword:`!yield`."
#: ../Doc/whatsnew/2.6.rst:445
msgid ""
"Using this decorator, our database example from the previous section could "
"be written as::"
msgstr ""
"Usando este decorador, nuestro ejemplo de base de datos de la sección "
"anterior podría escribirse como::"
#: ../Doc/whatsnew/2.6.rst:465
msgid ""
"The :mod:`contextlib` module also has a ``nested(mgr1, mgr2, ...)`` function "
"that combines a number of context managers so you don't need to write nested "
"':keyword:`with`' statements. In this example, the single ':keyword:`!"
"with`' statement both starts a database transaction and acquires a thread "
"lock::"
msgstr ""
"El módulo :mod:`contextlib` también tiene una función ``nested(mgr1, "
"mgr2, ...)`` que combina varios gestores de contexto para que no necesite "
"escribir sentencias ':keyword:`with`' anidadas. En este ejemplo, se utiliza "
"una única sentencia ':keyword:`!with`' que inicia una transacción de base de "
"datos y adquiere un bloqueo del hilo::"
#: ../Doc/whatsnew/2.6.rst:474
msgid ""
"Finally, the :func:`closing` function returns its argument so that it can be "
"bound to a variable, and calls the argument's ``.close()`` method at the end "
"of the block. ::"
msgstr ""
"Por último, la función :func:`close` retorna su argumento para que pueda "
"vincularse a una variable, y llama al método ``.close()`` del argumento al "
"final del bloque. ::"
#: ../Doc/whatsnew/2.6.rst:492
msgid ":pep:`343` - The \"with\" statement"
msgstr ":pep:`343` - La sentencia \"with\""
#: ../Doc/whatsnew/2.6.rst:489
msgid ""
"PEP written by Guido van Rossum and Nick Coghlan; implemented by Mike Bland, "
"Guido van Rossum, and Neal Norwitz. The PEP shows the code generated for a "
"':keyword:`with`' statement, which can be helpful in learning how the "
"statement works."
msgstr ""
"PEP escrito por Guido van Rossum y Nick Coghlan; implementado por Mike "
"Bland, Guido van Rossum y Neal Norwitz. El PEP muestra el código generado "
"para una sentencia ':keyword:`with`', que puede ser útil para aprender cómo "
"la sentencia funciona."
#: ../Doc/whatsnew/2.6.rst:494
msgid "The documentation for the :mod:`contextlib` module."
msgstr "La documentación para el módulo :mod:`contextlib`."
#: ../Doc/whatsnew/2.6.rst:501
msgid "PEP 366: Explicit Relative Imports From a Main Module"
msgstr "PEP 366: Importaciones relativas explícitas desde un módulo principal"
#: ../Doc/whatsnew/2.6.rst:503
msgid ""
"Python's :option:`-m` switch allows running a module as a script. When you "
"ran a module that was located inside a package, relative imports didn't work "
"correctly."
msgstr ""
"El modificador de Python :option:`-m` permite ejecutar un módulo como un "
"script. Cuando ejecutabas un módulo que estaba ubicado dentro de un paquete, "
"las importaciones relativas no funcionaban correctamente."
#: ../Doc/whatsnew/2.6.rst:507
msgid ""
"The fix for Python 2.6 adds a :attr:`__package__` attribute to modules. "
"When this attribute is present, relative imports will be relative to the "
"value of this attribute instead of the :attr:`__name__` attribute."
msgstr ""
"La corrección para Python 2.6 agrega un atributo :attr:`__package__` a los "
"módulos. Cuando este atributo está presente, las importaciones relativas "
"serán relativas al valor de este atributo en lugar del atributo :attr:"
"`__name__`."
#: ../Doc/whatsnew/2.6.rst:512
msgid ""
"PEP 302-style importers can then set :attr:`__package__` as necessary. The :"
"mod:`runpy` module that implements the :option:`-m` switch now does this, so "
"relative imports will now work correctly in scripts running from inside a "
"package."
msgstr ""
"Las importaciones de estilo PEP 302 pueden configurar :attr:`__package__` "
"según sea necesario. El módulo :mod:`runpy` que implementa el modificador :"
"option:`-m` ahora hace esto, por lo que las importaciones relativas ahora "
"funcionarán correctamente en los scripts que se ejecutan desde el interior "
"de un paquete."
#: ../Doc/whatsnew/2.6.rst:522
msgid "PEP 370: Per-user ``site-packages`` Directory"
msgstr "PEP 370: Directorio de ``site-packages`` por usuario"
#: ../Doc/whatsnew/2.6.rst:524
msgid ""
"When you run Python, the module search path ``sys.path`` usually includes a "
"directory whose path ends in ``\"site-packages\"``. This directory is "
"intended to hold locally installed packages available to all users using a "
"machine or a particular site installation."
msgstr ""
"Cuando ejecuta Python, la ruta de búsqueda del módulo ``sys.path`` "
"generalmente incluye un directorio cuya ruta termina en ``\"site-"
"packages\"``. Este directorio está destinado a contener paquetes instalados "
"localmente disponibles para todos los usuarios que utilizan una máquina o un "
"sitio de instalación en particular."
#: ../Doc/whatsnew/2.6.rst:529
msgid ""
"Python 2.6 introduces a convention for user-specific site directories. The "
"directory varies depending on the platform:"
msgstr ""
"Python 2.6 introduce una convención para directorios de sitios específicos "
"del usuario. El directorio varía según la plataforma:"
#: ../Doc/whatsnew/2.6.rst:532
msgid "Unix and Mac OS X: :file:`~/.local/`"
msgstr "Unix y Mac OS X: :file:`~/.local/`"
#: ../Doc/whatsnew/2.6.rst:533
msgid "Windows: :file:`%APPDATA%/Python`"
msgstr "Windows: :file:`%APPDATA%/Python`"
#: ../Doc/whatsnew/2.6.rst:535
msgid ""
"Within this directory, there will be version-specific subdirectories, such "
"as :file:`lib/python2.6/site-packages` on Unix/Mac OS and :file:`Python26/"
"site-packages` on Windows."
msgstr ""
"Dentro de este directorio, habrá subdirectorios específicos de versión, "
"como :file:`lib/python2.6/site-packages` en Unix/Mac OS y :file:`Python26/"
"site-packages` en Windows."
#: ../Doc/whatsnew/2.6.rst:539
msgid ""
"If you don't like the default directory, it can be overridden by an "
"environment variable. :envvar:`PYTHONUSERBASE` sets the root directory used "
"for all Python versions supporting this feature. On Windows, the directory "
"for application-specific data can be changed by setting the :envvar:"
"`APPDATA` environment variable. You can also modify the :file:`site.py` "
"file for your Python installation."
msgstr ""
"Si no le gusta el directorio predeterminado, puede sobrescribirlo mediante "
"una variable de entorno. :envvar:`PYTHONUSERBASE` establece el directorio "
"raíz utilizado para todas las versiones de Python que admiten esta función. "
"En Windows, el directorio de datos específicos de la aplicación se puede "
"cambiar configurando la variable de entorno :envvar:`APPDATA`. También puede "
"modificar el archivo :file:`site.py` para su instalación de Python."
#: ../Doc/whatsnew/2.6.rst:546
msgid ""
"The feature can be disabled entirely by running Python with the :option:`-s` "
"option or setting the :envvar:`PYTHONNOUSERSITE` environment variable."
msgstr ""
"La característica se puede desactivar por completo ejecutando Python con la "
"opción :option:`-s` o *seteando* la variable de entorno :envvar:"
"`PYTHONNOUSERSITE`."
#: ../Doc/whatsnew/2.6.rst:552
msgid ":pep:`370` - Per-user ``site-packages`` Directory"
msgstr "PEP 370: Directorio de ``site-packages`` por usuario"
#: ../Doc/whatsnew/2.6.rst:553
msgid "PEP written and implemented by Christian Heimes."
msgstr "PEP escrito e implementado por Christian Heimes."
#: ../Doc/whatsnew/2.6.rst:561
msgid "PEP 371: The ``multiprocessing`` Package"
msgstr "PEP 371: El paquete ``multiprocessing``"
#: ../Doc/whatsnew/2.6.rst:563
msgid ""
"The new :mod:`multiprocessing` package lets Python programs create new "
"processes that will perform a computation and return a result to the "
"parent. The parent and child processes can communicate using queues and "
"pipes, synchronize their operations using locks and semaphores, and can "
"share simple arrays of data."
msgstr ""
"El nuevo paquete :mod:`multiprocessing` permite a los programas de Python "
"crear nuevos procesos que realizarán un cálculo y retornaran un resultado al "
"padre. Los procesos padre e hijo pueden comunicarse mediante colas "
"(*queues*) y tuberías (*pipes*), sincronizar sus operaciones mediante "
"bloqueos y semáforos, y pueden compartir matrices simples de datos."
#: ../Doc/whatsnew/2.6.rst:569
msgid ""
"The :mod:`multiprocessing` module started out as an exact emulation of the :"
"mod:`threading` module using processes instead of threads. That goal was "
"discarded along the path to Python 2.6, but the general approach of the "
"module is still similar. The fundamental class is the :class:`Process`, "
"which is passed a callable object and a collection of arguments. The :meth:"
"`start` method sets the callable running in a subprocess, after which you "
"can call the :meth:`is_alive` method to check whether the subprocess is "
"still running and the :meth:`join` method to wait for the process to exit."
msgstr ""
"El módulo :mod:`multiprocessing` comenzó como una emulación exacta del "
"módulo :mod:`threading` usando procesos en lugar de hilos. Ese objetivo se "
"descartó en el camino a Python 2.6, pero el enfoque general del módulo sigue "
"siendo similar. La clase fundamental es :class:`Process`, a la que se le "
"pasa un objeto invocable y una colección de argumentos. El método :meth:"
"`start` establece el invocable ejecutándose en un subproceso, después de lo "
"cual se puede llamar al método :meth:`is_alive` para verificar si el "
"subproceso aún se está ejecutando y al método :meth:`join` para esperar al "
"proceso para salir."
#: ../Doc/whatsnew/2.6.rst:579
msgid ""
"Here's a simple example where the subprocess will calculate a factorial. "
"The function doing the calculation is written strangely so that it takes "
"significantly longer when the input argument is a multiple of 4."
msgstr ""
"Aquí hay un ejemplo simple donde el subproceso calculará un factorial. La "
"función que realiza el cálculo está escrita de forma extraña, por lo que "
"lleva mucho más tiempo cuando el argumento de entrada es un múltiplo de 4."
#: ../Doc/whatsnew/2.6.rst:616
msgid ""
"A :class:`~queue.Queue` is used to communicate the result of the factorial. "
"The :class:`~queue.Queue` object is stored in a global variable. The child "
"process will use the value of the variable when the child was created; "
"because it's a :class:`~queue.Queue`, parent and child can use the object to "
"communicate. (If the parent were to change the value of the global "
"variable, the child's value would be unaffected, and vice versa.)"
msgstr ""
"Un :class:`~queue.Queue` se usa para comunicar el resultado del factorial. "
"El objeto :class:`~queue.Queue` se almacena en una variable global. El "
"proceso hijo usará el valor de la variable cuando se creó el hijo; porque es "
"una :class:`~ queue.Queue`, padre e hijo pueden usar el objeto para "
"comunicarse. (Si el padre cambiara el valor de la variable global, el valor "
"del hijo no se vería afectado y viceversa)."
#: ../Doc/whatsnew/2.6.rst:624
msgid ""
"Two other classes, :class:`Pool` and :class:`Manager`, provide higher-level "
"interfaces. :class:`Pool` will create a fixed number of worker processes, "
"and requests can then be distributed to the workers by calling :meth:`apply` "
"or :meth:`apply_async` to add a single request, and :meth:`map` or :meth:"
"`map_async` to add a number of requests. The following code uses a :class:"
"`Pool` to spread requests across 5 worker processes and retrieve a list of "
"results::"
msgstr ""
"Otras dos clases, :class:`Pool` y :class:`Manager`, proporcionan interfaces "
"de nivel superior. :class:`Pool` creará un número fijo de procesos de "
"trabajo, y las solicitudes se pueden distribuir a los trabajadores llamando "
"a :meth:`apply` o :meth:`apply_async` para agregar una sola solicitud, y :"
"meth:`map` o :meth:`map_async` para agregar una serie de solicitudes. El "
"siguiente código usa :class:`Pool` para distribuir las solicitudes en 5 "
"procesos de trabajo y recuperar una lista de resultados::"
#: ../Doc/whatsnew/2.6.rst:642
msgid "This produces the following output::"
msgstr "Esto produce la siguiente salida::"
#: ../Doc/whatsnew/2.6.rst:651
msgid ""
"The other high-level interface, the :class:`Manager` class, creates a "
"separate server process that can hold master copies of Python data "
"structures. Other processes can then access and modify these data "
"structures using proxy objects. The following example creates a shared "
"dictionary by calling the :meth:`dict` method; the worker processes then "
"insert values into the dictionary. (Locking is not done for you "
"automatically, which doesn't matter in this example. :class:`Manager`'s "
"methods also include :meth:`Lock`, :meth:`RLock`, and :meth:`Semaphore` to "
"create shared locks.)"
msgstr ""
"La otra interfaz de alto nivel, la clase :class:`Manager`, crea un proceso "
"de servidor separado que puede contener copias maestras de las estructuras "
"de datos de Python. Luego, otros procesos pueden acceder y modificar estas "
"estructuras de datos utilizando objetos proxy. El siguiente ejemplo crea un "
"diccionario compartido llamando al método :meth:`dict`; los procesos de "
"trabajo luego insertan valores en el diccionario. (El bloqueo no se realiza "
"automáticamente, lo cual no importa en este ejemplo. Los métodos de :class:"
"`Manager` también incluyen :meth:`Lock`, :meth:`RLock`, y :meth:`Semaphore` "
"para crear bloqueos compartidos.)"
#: ../Doc/whatsnew/2.6.rst:695
msgid "This will produce the output::"
msgstr "Esto producirá la salida::"
#: ../Doc/whatsnew/2.6.rst:706
msgid "The documentation for the :mod:`multiprocessing` module."
msgstr "La documentación del módulo :mod:`multiprocessing`."
#: ../Doc/whatsnew/2.6.rst:709
msgid ":pep:`371` - Addition of the multiprocessing package"
msgstr ":pep:`371` - Adición del paquete de multiprocesamiento"
#: ../Doc/whatsnew/2.6.rst:709
msgid ""
"PEP written by Jesse Noller and Richard Oudkerk; implemented by Richard "
"Oudkerk and Jesse Noller."
msgstr ""
"PEP escrito por Jesse Noller y Richard Oudkerk; implementado por Richard "
"Oudkerk y Jesse Noller."
#: ../Doc/whatsnew/2.6.rst:718
msgid "PEP 3101: Advanced String Formatting"
msgstr "PEP 3101: Formateo avanzado de cadena de caracteres"
#: ../Doc/whatsnew/2.6.rst:720
msgid ""
"In Python 3.0, the ``%`` operator is supplemented by a more powerful string "
"formatting method, :meth:`format`. Support for the :meth:`str.format` "
"method has been backported to Python 2.6."
msgstr ""
"En Python 3.0, el operador ``%`` se complementa con un método de formato de "
"cadena más potente, :meth:`format`. La compatibilidad con el método :meth:"
"`str.format` se ha retroalimentado a Python 2.6."
#: ../Doc/whatsnew/2.6.rst:724
msgid ""
"In 2.6, both 8-bit and Unicode strings have a ``.format()`` method that "
"treats the string as a template and takes the arguments to be formatted. The "
"formatting template uses curly brackets (``{``, ``}``) as special "
"characters::"
msgstr ""
"En 2.6, tanto las cadenas de 8 bits como las Unicode tienen un método ``."
"format()`` que trata la cadena como una plantilla y toma los argumentos para "
"formatear. La plantilla de formato utiliza llaves (``{``, ``}``) como "
"caracteres especiales:"
#: ../Doc/whatsnew/2.6.rst:737
msgid "Curly brackets can be escaped by doubling them::"
msgstr "Las llaves se pueden escapar duplicándose::"
#: ../Doc/whatsnew/2.6.rst:742
msgid ""
"Field names can be integers indicating positional arguments, such as ``{0}"
"``, ``{1}``, etc. or names of keyword arguments. You can also supply "
"compound field names that read attributes or access dictionary keys::"
msgstr ""
"Los nombres de campo pueden ser números enteros que indican argumentos "
"posicionales, como ``{0}``, ``{1}``, etc. o nombres de argumentos de "
"palabras clave. También puede proporcionar nombres de campos compuestos que "
"lean atributos o accedan a claves de diccionario::"
#: ../Doc/whatsnew/2.6.rst:756
msgid ""
"Note that when using dictionary-style notation such as ``[.mp4]``, you don't "
"need to put any quotation marks around the string; it will look up the value "
"using ``.mp4`` as the key. Strings beginning with a number will be "
"converted to an integer. You can't write more complicated expressions "
"inside a format string."
msgstr ""
"Tenga en cuenta que cuando utilice una notación de estilo diccionario como "
"``[.mp4]``, no es necesario poner comillas alrededor de la cadena; se "
"buscará el valor usando ``.mp4`` como clave. Las cadenas de caracteres que "
"comienzan con un número se convertirán en entero. No puede escribir "
"expresiones más complicadas dentro de una cadena de formato."
#: ../Doc/whatsnew/2.6.rst:762
msgid ""
"So far we've shown how to specify which field to substitute into the "
"resulting string. The precise formatting used is also controllable by "
"adding a colon followed by a format specifier. For example::"
msgstr ""
"Hasta ahora hemos mostrado cómo especificar qué campo sustituir en la cadena "
"resultante. El formato preciso utilizado también se puede controlar "
"agregando dos puntos seguidos de un especificador de formato. Por ejemplo::"
#: ../Doc/whatsnew/2.6.rst:776
msgid "Format specifiers can reference other fields through nesting::"
msgstr ""
"Los especificadores de formato pueden hacer referencia a otros campos a "
"través del anidamiento::"
#: ../Doc/whatsnew/2.6.rst:786
msgid "The alignment of a field within the desired width can be specified:"
msgstr ""
"Se puede especificar la alineación de un campo dentro del ancho deseado:"
#: ../Doc/whatsnew/2.6.rst:789
msgid "Character"
msgstr "Carácter"
#: ../Doc/whatsnew/2.6.rst:789
msgid "Effect"
msgstr "Efecto"
#: ../Doc/whatsnew/2.6.rst:791
msgid "< (default)"
msgstr "< (por defecto)"
#: ../Doc/whatsnew/2.6.rst:791
msgid "Left-align"
msgstr "Alinear a la izquierda"
#: ../Doc/whatsnew/2.6.rst:792
msgid ">"
msgstr ">"
#: ../Doc/whatsnew/2.6.rst:792
msgid "Right-align"
msgstr "Alinear a la derecha"
#: ../Doc/whatsnew/2.6.rst:793
msgid "^"
msgstr "^"
#: ../Doc/whatsnew/2.6.rst:793
msgid "Center"
msgstr "Centrado"
#: ../Doc/whatsnew/2.6.rst:794
msgid "="
msgstr "="
#: ../Doc/whatsnew/2.6.rst:794
msgid "(For numeric types only) Pad after the sign."
msgstr "(Solo para tipos numéricos) Relleno después del signo."
#: ../Doc/whatsnew/2.6.rst:797
msgid ""
"Format specifiers can also include a presentation type, which controls how "
"the value is formatted. For example, floating-point numbers can be "
"formatted as a general number or in exponential notation::"
msgstr ""
"Los especificadores de formato también pueden incluir un tipo de "
"presentación, que controla cómo se formatea el valor. Por ejemplo, los "
"números de punto flotante pueden formatearse como un número general o en "
"notación exponencial::"
#: ../Doc/whatsnew/2.6.rst:806
msgid ""
"A variety of presentation types are available. Consult the 2.6 "
"documentation for a :ref:`complete list `; here's a sample:"
msgstr ""
"Hay una variedad de tipos de presentación disponibles. Consulte la "
"documentación 2.6 para obtener una :ref:`lista completa `; "
"aquí hay un ejemplo:"
#: ../Doc/whatsnew/2.6.rst:810
msgid "``b``"
msgstr "``b``"
#: ../Doc/whatsnew/2.6.rst:810
msgid "Binary. Outputs the number in base 2."
msgstr "Binario. Emite el número en base 2."
#: ../Doc/whatsnew/2.6.rst:811
msgid "``c``"
msgstr "``c``"
#: ../Doc/whatsnew/2.6.rst:811
msgid ""
"Character. Converts the integer to the corresponding Unicode character "
"before printing."
msgstr ""
"Carácter. Convierte el número entero en el carácter Unicode correspondiente "
"antes de imprimirlo."
#: ../Doc/whatsnew/2.6.rst:813
msgid "``d``"
msgstr "``d``"
#: ../Doc/whatsnew/2.6.rst:813
msgid "Decimal Integer. Outputs the number in base 10."
msgstr "Entero Decimal. Muestra el número en base 10."
#: ../Doc/whatsnew/2.6.rst:814
msgid "``o``"
msgstr "``o``"
#: ../Doc/whatsnew/2.6.rst:814
msgid "Octal format. Outputs the number in base 8."
msgstr "Formato octal. Da salida al número en base 8."
#: ../Doc/whatsnew/2.6.rst:815
msgid "``x``"
msgstr "``x``"
#: ../Doc/whatsnew/2.6.rst:815
msgid ""
"Hex format. Outputs the number in base 16, using lower-case letters for the "
"digits above 9."
msgstr ""
"Formato hexadecimal. Muestra el número en base 16, utilizando letras "
"minúsculas para los dígitos superiores a 9."
#: ../Doc/whatsnew/2.6.rst:817
msgid "``e``"
msgstr "``e``"
#: ../Doc/whatsnew/2.6.rst:817
msgid ""
"Exponent notation. Prints the number in scientific notation using the letter "
"'e' to indicate the exponent."
msgstr ""
"Notación de exponente. Imprime el número en notación científica utilizando "
"la letra 'e' para indicar el exponente."
#: ../Doc/whatsnew/2.6.rst:819
msgid "``g``"
msgstr "``g``"
#: ../Doc/whatsnew/2.6.rst:819
msgid ""
"General format. This prints the number as a fixed-point number, unless the "
"number is too large, in which case it switches to 'e' exponent notation."
msgstr ""
"Formato general. Esto imprime el número como un número de punto fijo, a "
"menos que el número sea demasiado grande, en cuyo caso cambia a la notación "
"de exponente 'e'."
#: ../Doc/whatsnew/2.6.rst:822
msgid "``n``"
msgstr "``n``"
#: ../Doc/whatsnew/2.6.rst:822
msgid ""
"Number. This is the same as 'g' (for floats) or 'd' (for integers), except "
"that it uses the current locale setting to insert the appropriate number "
"separator characters."
msgstr ""
"Número. Es lo mismo que 'g' (para flotantes) o 'd' (para enteros), salvo que "
"utiliza la configuración regional actual para insertar los caracteres "
"separadores de números adecuados."
#: ../Doc/whatsnew/2.6.rst:825
msgid "``%``"
msgstr "``%``"
#: ../Doc/whatsnew/2.6.rst:825
msgid ""
"Percentage. Multiplies the number by 100 and displays in fixed ('f') format, "
"followed by a percent sign."
msgstr ""
"Porcentaje. Multiplica el número por 100 y lo muestra en formato fijo ('f'), "
"seguido de un signo de porcentaje."
#: ../Doc/whatsnew/2.6.rst:829
msgid ""
"Classes and types can define a :meth:`__format__` method to control how "
"they're formatted. It receives a single argument, the format specifier::"
msgstr ""
"Las clases y los tipos pueden definir un método :meth:`__format__` para "
"controlar cómo se formatean. Recibe un único argumento, el especificador de "
"formato::"
#: ../Doc/whatsnew/2.6.rst:838
msgid ""
"There's also a :func:`format` builtin that will format a single value. It "
"calls the type's :meth:`__format__` method with the provided specifier::"
msgstr ""
"También hay un builtin :func:`format` que formateará un solo valor. Llama "
"al método :meth:`__format__` del tipo con el especificador proporcionado::"
#: ../Doc/whatsnew/2.6.rst:849
msgid ":ref:`formatstrings`"
msgstr ":ref:`formatstrings`"
#: ../Doc/whatsnew/2.6.rst:849
msgid "The reference documentation for format fields."
msgstr "La documentación de referencia para los campos de formato."
#: ../Doc/whatsnew/2.6.rst:851
msgid ":pep:`3101` - Advanced String Formatting"
msgstr ":pep:`3101` - Formato avanzado de cadenas"
#: ../Doc/whatsnew/2.6.rst:852
msgid "PEP written by Talin. Implemented by Eric Smith."
msgstr "PEP escrito por Talin. Implementado por Eric Smith."
#: ../Doc/whatsnew/2.6.rst:859
msgid "PEP 3105: ``print`` As a Function"
msgstr "PEP 3105: ``print`` como función"
#: ../Doc/whatsnew/2.6.rst:861
msgid ""
"The ``print`` statement becomes the :func:`print` function in Python 3.0. "
"Making :func:`print` a function makes it possible to replace the function by "
"doing ``def print(...)`` or importing a new function from somewhere else."
msgstr ""
"La sentencia ``print`` se convierte en la función :func:`print` en Python "
"3.0. Hacer de :func:`print` una función hace posible reemplazar la función "
"haciendo ``def print(...)`` o importando una nueva función desde otro lugar."
#: ../Doc/whatsnew/2.6.rst:865
msgid ""
"Python 2.6 has a ``__future__`` import that removes ``print`` as language "
"syntax, letting you use the functional form instead. For example::"
msgstr ""
"Python 2.6 tiene una importación ``__future__`` que elimina ``print`` como "
"sintaxis del lenguaje, permitiéndote usar la forma funcional en su lugar. "
"Por ejemplo::"
#: ../Doc/whatsnew/2.6.rst:871
msgid "The signature of the new function is::"
msgstr "La firma de la nueva función es::"
#: ../Doc/whatsnew/2.6.rst:876
msgid "The parameters are:"
msgstr "Los parámetros son:"
#: ../Doc/whatsnew/2.6.rst:878
msgid "*args*: positional arguments whose values will be printed out."
msgstr "*args*: argumentos posicionales cuyos valores se imprimirán."
#: ../Doc/whatsnew/2.6.rst:879
msgid "*sep*: the separator, which will be printed between arguments."
msgstr "*sep*: el separador que se imprimirá entre los argumentos."
#: ../Doc/whatsnew/2.6.rst:880
msgid ""
"*end*: the ending text, which will be printed after all of the arguments "
"have been output."
msgstr ""
"*end*: el texto final, que se imprimirá después de que se hayan emitido "
"todos los argumentos."
#: ../Doc/whatsnew/2.6.rst:882
msgid "*file*: the file object to which the output will be sent."
msgstr "*archivo*: el objeto archivo al que se enviará la salida."
#: ../Doc/whatsnew/2.6.rst:886
msgid ":pep:`3105` - Make print a function"
msgstr ":pep:`3105` - Hacer de la impresión una función"
#: ../Doc/whatsnew/2.6.rst:887
msgid "PEP written by Georg Brandl."
msgstr "PEP escrito por Georg Brandl."
#: ../Doc/whatsnew/2.6.rst:894
msgid "PEP 3110: Exception-Handling Changes"
msgstr "PEP 3110: Cambios en el manejo de excepciones"
#: ../Doc/whatsnew/2.6.rst:896
msgid ""
"One error that Python programmers occasionally make is writing the following "
"code::"
msgstr ""
"Un error que ocasionalmente cometen los programadores de Python es escribir "
"el siguiente código::"
#: ../Doc/whatsnew/2.6.rst:904
msgid ""
"The author is probably trying to catch both :exc:`TypeError` and :exc:"
"`ValueError` exceptions, but this code actually does something different: it "
"will catch :exc:`TypeError` and bind the resulting exception object to the "
"local name ``\"ValueError\"``. The :exc:`ValueError` exception will not be "
"caught at all. The correct code specifies a tuple of exceptions::"
msgstr ""
"El autor probablemente está tratando de atrapar ambas excepciones :exc:"
"`TypeError` y :exc:`ValueError`, pero este código en realidad hace algo "
"diferente: atrapará :exc:`TypeError` y vinculará el objeto de excepción "
"resultante al nombre local ``\"ValueError\"``. La excepción :exc:"
"`ValueError` no será capturada en absoluto. El código correcto especifica "
"una tupla de excepciones::"
#: ../Doc/whatsnew/2.6.rst:916
msgid ""
"This error happens because the use of the comma here is ambiguous: does it "
"indicate two different nodes in the parse tree, or a single node that's a "
"tuple?"
msgstr ""
"Este error se produce porque el uso de la coma aquí es ambiguo: ¿indica dos "
"nodos diferentes en el árbol de análisis sintáctico, o un único nodo que es "
"una tupla?"
#: ../Doc/whatsnew/2.6.rst:920
msgid ""
"Python 3.0 makes this unambiguous by replacing the comma with the word "
"\"as\". To catch an exception and store the exception object in the "
"variable ``exc``, you must write::"
msgstr ""
"Python 3.0 hace que esto sea inequívoco al sustituir la coma por la palabra "
"\"as\". Para atrapar una excepción y almacenar el objeto de excepción en la "
"variable ``exc``, debes escribir::"
#: ../Doc/whatsnew/2.6.rst:929
msgid ""
"Python 3.0 will only support the use of \"as\", and therefore interprets the "
"first example as catching two different exceptions. Python 2.6 supports "
"both the comma and \"as\", so existing code will continue to work. We "
"therefore suggest using \"as\" when writing new Python code that will only "
"be executed with 2.6."
msgstr ""
"Python 3.0 sólo soporta el uso de \"as\", y por lo tanto interpreta el "
"primer ejemplo como la captura de dos excepciones diferentes. Python 2.6 "
"soporta tanto la coma como \"as\", por lo que el código existente seguirá "
"funcionando. Por lo tanto, sugerimos utilizar \"as\" cuando se escriba "
"nuevo código Python que sólo se ejecutará con la versión 2.6."
#: ../Doc/whatsnew/2.6.rst:937
msgid ":pep:`3110` - Catching Exceptions in Python 3000"
msgstr ":pep:`3110` - Captura de excepciones en Python 3000"
#: ../Doc/whatsnew/2.6.rst:938
msgid "PEP written and implemented by Collin Winter."
msgstr "PEP escrito y ejecutado por Collin Winter."
#: ../Doc/whatsnew/2.6.rst:945
msgid "PEP 3112: Byte Literals"
msgstr "PEP 3112: Literales de bytes"
#: ../Doc/whatsnew/2.6.rst:947
msgid ""
"Python 3.0 adopts Unicode as the language's fundamental string type and "
"denotes 8-bit literals differently, either as ``b'string'`` or using a :"
"class:`bytes` constructor. For future compatibility, Python 2.6 adds :class:"
"`bytes` as a synonym for the :class:`str` type, and it also supports the "
"``b''`` notation."
msgstr ""
"Python 3.0 adopta Unicode como el tipo de cadena fundamental del lenguaje y "
"denota los literales de 8 bits de forma diferente, ya sea como ``b'string`` "
"o utilizando un constructor :class:`bytes`. Por compatibilidad futura, "
"Python 2.6 añade :class:`bytes` como sinónimo del tipo :class:`str`, y "
"también soporta la notación ``b''``."
#: ../Doc/whatsnew/2.6.rst:954
msgid ""
"The 2.6 :class:`str` differs from 3.0's :class:`bytes` type in various ways; "
"most notably, the constructor is completely different. In 3.0, ``bytes([65, "
"66, 67])`` is 3 elements long, containing the bytes representing ``ABC``; in "
"2.6, ``bytes([65, 66, 67])`` returns the 12-byte string representing the :"
"func:`str` of the list."
msgstr ""
"El tipo :class:`str` de la versión 2.6 difiere del tipo :class:`bytes` de la "
"versión 3.0 en varios aspectos; el más notable es que el constructor es "
"completamente diferente. En la 3.0, ``bytes([65, 66, 67])`` tiene 3 "
"elementos, que contienen los bytes que representan ``ABC``; en la 2.6, "
"``bytes([65, 66, 67])`` devuelve la cadena de 12 bytes que representa el :"
"func:`str` de la lista."
#: ../Doc/whatsnew/2.6.rst:960
msgid ""
"The primary use of :class:`bytes` in 2.6 will be to write tests of object "
"type such as ``isinstance(x, bytes)``. This will help the 2to3 converter, "
"which can't tell whether 2.x code intends strings to contain either "
"characters or 8-bit bytes; you can now use either :class:`bytes` or :class:"
"`str` to represent your intention exactly, and the resulting code will also "
"be correct in Python 3.0."
msgstr ""
"El uso principal de :class:`bytes` en 2.6 será escribir pruebas de tipo de "
"objeto como ``isinstance(x, bytes)``. Esto ayudará al convertidor de 2 a 3, "
"que no puede decir si el código de 2.x pretende que las cadenas contengan "
"caracteres o bytes de 8 bits; ahora puede utilizar :class:`bytes` o :class:"
"`str` para representar su intención exactamente, y el código resultante "
"también será correcto en Python 3.0."
#: ../Doc/whatsnew/2.6.rst:967
msgid ""
"There's also a ``__future__`` import that causes all string literals to "
"become Unicode strings. This means that ``\\u`` escape sequences can be "
"used to include Unicode characters::"
msgstr ""
"También hay una importación ``__future__`` que hace que todos los literales "
"de cadena se conviertan en cadenas Unicode. Esto significa que las "
"secuencias de escape ``u`` pueden ser utilizadas para incluir caracteres "
"Unicode::"
#: ../Doc/whatsnew/2.6.rst:979
msgid ""
"At the C level, Python 3.0 will rename the existing 8-bit string type, "
"called :c:type:`!PyStringObject` in Python 2.x, to :c:type:`PyBytesObject`. "
"Python 2.6 uses ``#define`` to support using the names :c:func:"
"`PyBytesObject`, :c:func:`PyBytes_Check`, :c:func:"
"`PyBytes_FromStringAndSize`, and all the other functions and macros used "
"with strings."
msgstr ""
"A nivel de C, Python 3.0 renombrará el tipo de cadena de 8 bits existente, "
"llamado :c:type:`!PyStringObject` en Python 2.x, a :c:type:`PyBytesObject`. "
"Python 2.6 utiliza ``#define`` para soportar el uso de los nombres :c:func:"
"`PyBytesObject`, :c:func:`PyBytes_Check`, :c:func:"
"`PyBytes_FromStringAndSize`, y todas las demás funciones y macros utilizadas "
"con cadenas."
#: ../Doc/whatsnew/2.6.rst:986
msgid ""
"Instances of the :class:`bytes` type are immutable just as strings are. A "
"new :class:`bytearray` type stores a mutable sequence of bytes::"
msgstr ""
"Las instancias del tipo :class:`bytes` son inmutables al igual que las "
"cadenas. Un nuevo tipo :class:`bytearray` almacena una secuencia mutable de "
"bytes::"
#: ../Doc/whatsnew/2.6.rst:1001
msgid ""
"Byte arrays support most of the methods of string types, such as :meth:"
"`startswith`/:meth:`endswith`, :meth:`find`/:meth:`rfind`, and some of the "
"methods of lists, such as :meth:`append`, :meth:`pop`, and :meth:`reverse`."
msgstr ""
"Las matrices de bytes admiten la mayoría de los métodos de los tipos de "
"cadena, como :meth:`startswith`/:meth:`endswith`, :meth:`find`/:meth:"
"`rfind`, y algunos de los métodos de las listas, como :meth:`append`, :meth:"
"`pop` y :meth:`reverse`."
#: ../Doc/whatsnew/2.6.rst:1014
msgid ""
"There's also a corresponding C API, with :c:func:`PyByteArray_FromObject`, :"
"c:func:`PyByteArray_FromStringAndSize`, and various other functions."
msgstr ""
"También existe la correspondiente API en C, con :c:func:"
"`PyByteArray_FromObject`, :c:func:`PyByteArray_FromStringAndSize`, y varias "
"otras funciones."
#: ../Doc/whatsnew/2.6.rst:1021
msgid ":pep:`3112` - Bytes literals in Python 3000"
msgstr ":pep:`3112` - Literales de bytes en Python 3000"
#: ../Doc/whatsnew/2.6.rst:1022
msgid "PEP written by Jason Orendorff; backported to 2.6 by Christian Heimes."
msgstr ""
"PEP escrito por Jason Orendorff; retroalimentado a 2.6 por Christian Heimes."
#: ../Doc/whatsnew/2.6.rst:1029
msgid "PEP 3116: New I/O Library"
msgstr "PEP 3116: Nueva biblioteca de E/S"
#: ../Doc/whatsnew/2.6.rst:1031
msgid ""
"Python's built-in file objects support a number of methods, but file-like "
"objects don't necessarily support all of them. Objects that imitate files "
"usually support :meth:`read` and :meth:`write`, but they may not support :"
"meth:`readline`, for example. Python 3.0 introduces a layered I/O library "
"in the :mod:`io` module that separates buffering and text-handling features "
"from the fundamental read and write operations."
msgstr ""
"Los objetos de archivo incorporados en Python soportan una serie de métodos, "
"pero los objetos que imitan a los archivos no necesariamente los soportan "
"todos. Los objetos que imitan a los archivos normalmente soportan :meth:"
"`read` y :meth:`write`, pero pueden no soportar :meth:`readline`, por "
"ejemplo. Python 3.0 introduce una biblioteca de E/S por capas en el módulo :"
"mod:`io` que separa las funciones de almacenamiento en búfer y manejo de "
"texto de las operaciones fundamentales de lectura y escritura."
#: ../Doc/whatsnew/2.6.rst:1039
msgid ""
"There are three levels of abstract base classes provided by the :mod:`io` "
"module:"
msgstr ""
"Existen tres niveles de clases base abstractas proporcionadas por el módulo :"
"mod:`io`:"
#: ../Doc/whatsnew/2.6.rst:1042
msgid ""
":class:`RawIOBase` defines raw I/O operations: :meth:`read`, :meth:"
"`readinto`, :meth:`write`, :meth:`seek`, :meth:`tell`, :meth:`truncate`, "
"and :meth:`close`. Most of the methods of this class will often map to a "
"single system call. There are also :meth:`readable`, :meth:`writable`, and :"
"meth:`seekable` methods for determining what operations a given object will "
"allow."
msgstr ""
":class:`RawIOBase` define las operaciones de E/S en bruto: :meth:`read`, :"
"meth:`readinto`, :meth:`write`, :meth:`seek`, :meth:`tell`, :meth:"
"`truncate`, y :meth:`close`. La mayoría de los métodos de esta clase suelen "
"corresponder a una única llamada al sistema. También hay métodos :meth:"
"`readable`, :meth:`writable` y :meth:`seekable` para determinar qué "
"operaciones permite un objeto dado."
#: ../Doc/whatsnew/2.6.rst:1050
msgid ""
"Python 3.0 has concrete implementations of this class for files and sockets, "
"but Python 2.6 hasn't restructured its file and socket objects in this way."
msgstr ""
"Python 3.0 tiene implementaciones concretas de esta clase para archivos y "
"sockets, pero Python 2.6 no ha reestructurado sus objetos archivo y socket "
"de esta manera."
#: ../Doc/whatsnew/2.6.rst:1056
msgid ""
":class:`BufferedIOBase` is an abstract base class that buffers data in "
"memory to reduce the number of system calls used, making I/O processing more "
"efficient. It supports all of the methods of :class:`RawIOBase`, and adds a :"
"attr:`raw` attribute holding the underlying raw object."
msgstr ""
":class:`BufferedIOBase` es una clase base abstracta que almacena los datos "
"en la memoria para reducir el número de llamadas al sistema, haciendo más "
"eficiente el procesamiento de E/S. Soporta todos los métodos de :class:"
"`RawIOBase`, y añade un atributo :attr:`raw` que contiene el objeto crudo "
"subyacente."
#: ../Doc/whatsnew/2.6.rst:1062
msgid ""
"There are five concrete classes implementing this ABC. :class:"
"`BufferedWriter` and :class:`BufferedReader` are for objects that support "
"write-only or read-only usage that have a :meth:`seek` method for random "
"access. :class:`BufferedRandom` objects support read and write access upon "
"the same underlying stream, and :class:`BufferedRWPair` is for objects such "
"as TTYs that have both read and write operations acting upon unconnected "
"streams of data. The :class:`BytesIO` class supports reading, writing, and "
"seeking over an in-memory buffer."
msgstr ""
"Hay cinco clases concretas que implementan este ABC. :class:`BufferedWriter` "
"y :class:`BufferedReader` son para objetos que soportan el uso de sólo "
"escritura o de sólo lectura que tienen un método :meth:`seek` para el acceso "
"aleatorio. Los objetos :class:`BufferedRandom` soportan el acceso de lectura "
"y escritura sobre el mismo flujo subyacente, y :class:`BufferedRWPair` es "
"para objetos como los TTYs que tienen operaciones de lectura y escritura "
"actuando sobre flujos de datos desconectados. La clase :class:`BytesIO` "
"permite leer, escribir y buscar sobre un buffer en memoria."
#: ../Doc/whatsnew/2.6.rst:1075
msgid ""
":class:`TextIOBase`: Provides functions for reading and writing strings "
"(remember, strings will be Unicode in Python 3.0), and supporting :term:"
"`universal newlines`. :class:`TextIOBase` defines the :meth:`readline` "
"method and supports iteration upon objects."
msgstr ""
":class:`TextIOBase`: Proporciona funciones para leer y escribir cadenas "
"(recuerde que las cadenas serán Unicode en Python 3.0), y soporta :term:"
"`universal newlines`. :class:`TextIOBase` define el método :meth:`readline` "
"y soporta la iteración sobre objetos."
#: ../Doc/whatsnew/2.6.rst:1081
msgid ""
"There are two concrete implementations. :class:`TextIOWrapper` wraps a "
"buffered I/O object, supporting all of the methods for text I/O and adding "
"a :attr:`buffer` attribute for access to the underlying object. :class:"
"`StringIO` simply buffers everything in memory without ever writing anything "
"to disk."
msgstr ""
"Hay dos implementaciones concretas. :class:`TextIOWrapper` envuelve un "
"objeto de E/S con buffer, soportando todos los métodos de E/S de texto y "
"añadiendo un atributo :attr:`buffer` para acceder al objeto subyacente. :"
"class:`StringIO` simplemente almacena todo en memoria sin escribir nunca "
"nada en el disco."
#: ../Doc/whatsnew/2.6.rst:1087
msgid ""
"(In Python 2.6, :class:`io.StringIO` is implemented in pure Python, so it's "
"pretty slow. You should therefore stick with the existing :mod:`StringIO` "
"module or :mod:`cStringIO` for now. At some point Python 3.0's :mod:`io` "
"module will be rewritten into C for speed, and perhaps the C implementation "
"will be backported to the 2.x releases.)"
msgstr ""
"(En Python 2.6, :class:`io.StringIO` está implementado en Python puro, por "
"lo que es bastante lento. Por lo tanto, deberías seguir con el módulo :mod:"
"`StringIO` existente o con :mod:`cStringIO` por ahora. En algún momento el "
"módulo :mod:`io` de Python 3.0 será reescrito en C para aumentar la "
"velocidad, y quizás la implementación en C será retroalimentada a las "
"versiones 2.x)"
#: ../Doc/whatsnew/2.6.rst:1093
msgid ""
"In Python 2.6, the underlying implementations haven't been restructured to "
"build on top of the :mod:`io` module's classes. The module is being "
"provided to make it easier to write code that's forward-compatible with 3.0, "
"and to save developers the effort of writing their own implementations of "
"buffering and text I/O."
msgstr ""
"En Python 2.6, las implementaciones subyacentes no han sido reestructuradas "
"para construir sobre las clases del módulo :mod:`io`. El módulo se "
"proporciona para facilitar la escritura de código compatible con la versión "
"3.0, y para ahorrar a los desarrolladores el esfuerzo de escribir sus "
"propias implementaciones de búfer y E/S de texto."
#: ../Doc/whatsnew/2.6.rst:1103
msgid ":pep:`3116` - New I/O"
msgstr ":pep:`3116` - Nueva E/S"
#: ../Doc/whatsnew/2.6.rst:1102
msgid ""
"PEP written by Daniel Stutzbach, Mike Verdone, and Guido van Rossum. Code by "
"Guido van Rossum, Georg Brandl, Walter Doerwald, Jeremy Hylton, Martin von "
"Löwis, Tony Lownds, and others."
msgstr ""
"PEP escrito por Daniel Stutzbach, Mike Verdone y Guido van Rossum. Código de "
"Guido van Rossum, Georg Brandl, Walter Doerwald, Jeremy Hylton, Martin von "
"Löwis, Tony Lownds y otros."
#: ../Doc/whatsnew/2.6.rst:1111
msgid "PEP 3118: Revised Buffer Protocol"
msgstr "PEP 3118: Protocolo revisado de la memoria intermedia"
#: ../Doc/whatsnew/2.6.rst:1113
msgid ""
"The buffer protocol is a C-level API that lets Python types exchange "
"pointers into their internal representations. A memory-mapped file can be "
"viewed as a buffer of characters, for example, and this lets another module "
"such as :mod:`re` treat memory-mapped files as a string of characters to be "
"searched."
msgstr ""
"El protocolo de búferes es una API de nivel C que permite a los tipos de "
"Python intercambiar punteros a sus representaciones internas. Un archivo "
"mapeado en memoria puede ser visto como un buffer de caracteres, por "
"ejemplo, y esto permite que otro módulo como :mod:`re` trate los archivos "
"mapeados en memoria como una cadena de caracteres a buscar."
#: ../Doc/whatsnew/2.6.rst:1119
msgid ""
"The primary users of the buffer protocol are numeric-processing packages "
"such as NumPy, which expose the internal representation of arrays so that "
"callers can write data directly into an array instead of going through a "
"slower API. This PEP updates the buffer protocol in light of experience "
"from NumPy development, adding a number of new features such as indicating "
"the shape of an array or locking a memory region."
msgstr ""
"Los principales usuarios del protocolo de búferes son los paquetes de "
"procesamiento numérico como NumPy, que exponen la representación interna de "
"los arrays para que los invocadores puedan escribir datos directamente en un "
"array en lugar de pasar por una API más lenta. Este PEP actualiza el "
"protocolo de búfer a la luz de la experiencia del desarrollo de NumPy, "
"añadiendo una serie de nuevas características como la indicación de la forma "
"de un array o el bloqueo de una región de memoria."
#: ../Doc/whatsnew/2.6.rst:1126
msgid ""
"The most important new C API function is ``PyObject_GetBuffer(PyObject *obj, "
"Py_buffer *view, int flags)``, which takes an object and a set of flags, and "
"fills in the ``Py_buffer`` structure with information about the object's "
"memory representation. Objects can use this operation to lock memory in "
"place while an external caller could be modifying the contents, so there's a "
"corresponding ``PyBuffer_Release(Py_buffer *view)`` to indicate that the "
"external caller is done."
msgstr ""
"La nueva función más importante de la API en C es "
"``PyObject_GetBuffer(PyObject *obj, Py_buffer *view, int flags)``, que toma "
"un objeto y un conjunto de flags, y rellena la estructura ``Py_buffer`` con "
"información sobre la representación en memoria del objeto. Los objetos "
"pueden utilizar esta operación para bloquear la memoria en su lugar mientras "
"un llamador externo podría estar modificando el contenido, por lo que hay un "
"correspondiente ``PyBuffer_Release(Py_buffer *view)`` para indicar que el "
"llamador externo ha terminado."
#: ../Doc/whatsnew/2.6.rst:1138
msgid ""
"The *flags* argument to :c:func:`PyObject_GetBuffer` specifies constraints "
"upon the memory returned. Some examples are:"
msgstr ""
"El argumento *flags* de :c:func:`PyObject_GetBuffer` especifica las "
"restricciones de la memoria devuelta. Algunos ejemplos son:"
#: ../Doc/whatsnew/2.6.rst:1141
msgid ":c:macro:`PyBUF_WRITABLE` indicates that the memory must be writable."
msgstr ":c:macro:`PyBUF_WRITABLE` indica que la memoria debe ser grabable."
#: ../Doc/whatsnew/2.6.rst:1143
msgid ""
":c:macro:`PyBUF_LOCK` requests a read-only or exclusive lock on the memory."
msgstr ""
":c:macro:`PyBUF_LOCK` solicita un bloqueo de sólo lectura o exclusivo en la "
"memoria."
#: ../Doc/whatsnew/2.6.rst:1145
msgid ""
":c:macro:`PyBUF_C_CONTIGUOUS` and :c:macro:`PyBUF_F_CONTIGUOUS` requests a C-"
"contiguous (last dimension varies the fastest) or Fortran-contiguous (first "
"dimension varies the fastest) array layout."
msgstr ""
":c:macro:`PyBUF_C_CONTIGUOUS` y :c:macro:`PyBUF_F_CONTIGUOUS` solicitan una "
"disposición de matriz contigua en C (la última dimensión varía más "
"rápidamente) o contigua en Fortran (la primera dimensión varía más "
"rápidamente)."
#: ../Doc/whatsnew/2.6.rst:1149
msgid ""
"Two new argument codes for :c:func:`PyArg_ParseTuple`, ``s*`` and ``z*``, "
"return locked buffer objects for a parameter."
msgstr ""
"Dos nuevos códigos de argumento para :c:func:`PyArg_ParseTuple`, ``s*`` y "
"``z*``, devuelven objetos buffer bloqueados para un parámetro."
#: ../Doc/whatsnew/2.6.rst:1155
msgid ":pep:`3118` - Revising the buffer protocol"
msgstr ":pep:`3118` - Revisión del protocolo del buffer"
#: ../Doc/whatsnew/2.6.rst:1155
msgid ""
"PEP written by Travis Oliphant and Carl Banks; implemented by Travis "
"Oliphant."
msgstr ""
"PEP escrito por Travis Oliphant y Carl Banks; implementado por Travis "
"Oliphant."
#: ../Doc/whatsnew/2.6.rst:1164
msgid "PEP 3119: Abstract Base Classes"
msgstr "PEP 3119: Clases base abstractas"
#: ../Doc/whatsnew/2.6.rst:1166
msgid ""
"Some object-oriented languages such as Java support interfaces, declaring "
"that a class has a given set of methods or supports a given access "
"protocol. Abstract Base Classes (or ABCs) are an equivalent feature for "
"Python. The ABC support consists of an :mod:`abc` module containing a "
"metaclass called :class:`ABCMeta`, special handling of this metaclass by "
"the :func:`isinstance` and :func:`issubclass` builtins, and a collection of "
"basic ABCs that the Python developers think will be widely useful. Future "
"versions of Python will probably add more ABCs."
msgstr ""
"Algunos lenguajes orientados a objetos, como Java, admiten interfaces, que "
"declaran que una clase tiene un determinado conjunto de métodos o admite un "
"determinado protocolo de acceso. Las clases base abstractas (o ABC) son una "
"característica equivalente para Python. El soporte de ABC consiste en un "
"módulo :mod:`abc` que contiene una metaclase llamada :class:`ABCMeta`, un "
"manejo especial de esta metaclase por parte de los builtins :func:"
"`isinstance` y :func:`issubclass`, y una colección de ABCs básicas que los "
"desarrolladores de Python creen que serán ampliamente útiles. Las futuras "
"versiones de Python probablemente añadirán más ABCs."
#: ../Doc/whatsnew/2.6.rst:1176
msgid ""
"Let's say you have a particular class and wish to know whether it supports "
"dictionary-style access. The phrase \"dictionary-style\" is vague, however. "
"It probably means that accessing items with ``obj[1]`` works. Does it imply "
"that setting items with ``obj[2] = value`` works? Or that the object will "
"have :meth:`keys`, :meth:`values`, and :meth:`items` methods? What about "
"the iterative variants such as :meth:`iterkeys`? :meth:`copy` and :meth:"
"`update`? Iterating over the object with :func:`iter`?"
msgstr ""
"Supongamos que tiene una clase concreta y desea saber si admite el acceso "
"tipo diccionario. Sin embargo, la frase \"estilo diccionario\" es vaga. "
"Probablemente significa que el acceso a los elementos con ``obj[1]`` "
"funciona. ¿Implica que el establecimiento de elementos con ``obj[2] = "
"valor`` funciona? ¿O que el objeto tendrá métodos :meth:`keys`, :meth:"
"`values` y :meth:`items`? ¿Qué pasa con las variantes iterativas como :meth:"
"`iterkeys`? :meth:`copy` y :meth:`update`? ¿Iterar sobre el objeto con :"
"func:`iter`?"
#: ../Doc/whatsnew/2.6.rst:1184
msgid ""
"The Python 2.6 :mod:`collections` module includes a number of different ABCs "
"that represent these distinctions. :class:`Iterable` indicates that a class "
"defines :meth:`__iter__`, and :class:`Container` means the class defines a :"
"meth:`__contains__` method and therefore supports ``x in y`` expressions. "
"The basic dictionary interface of getting items, setting items, and :meth:"
"`keys`, :meth:`values`, and :meth:`items`, is defined by the :class:"
"`MutableMapping` ABC."
msgstr ""
"El módulo :mod:`collections` de Python 2.6 incluye un número de ABCs "
"diferentes que representan estas distinciones. :class:`Iterable` indica que "
"una clase define :meth:`__iter__`, y :class:`Container` significa que la "
"clase define un método :meth:`__contains__` y por lo tanto soporta "
"expresiones ``x in y``. La interfaz básica del diccionario para obtener "
"elementos, establecer elementos, y :meth:`llaves`, :meth:`valores`, y :meth:"
"`elementos`, está definida por el :class:`MutableMapping` ABC."
#: ../Doc/whatsnew/2.6.rst:1193
msgid ""
"You can derive your own classes from a particular ABC to indicate they "
"support that ABC's interface::"
msgstr ""
"Puedes derivar tus propias clases de un ABC particular para indicar que "
"soportan la interfaz de ese ABC::"
#: ../Doc/whatsnew/2.6.rst:1202
msgid ""
"Alternatively, you could write the class without deriving from the desired "
"ABC and instead register the class by calling the ABC's :meth:`register` "
"method::"
msgstr ""
"Alternativamente, puede escribir la clase sin derivar del ABC deseado y en "
"su lugar registrar la clase llamando al método :meth:`register` del ABC::"
#: ../Doc/whatsnew/2.6.rst:1213
msgid ""
"For classes that you write, deriving from the ABC is probably clearer. The :"
"meth:`register` method is useful when you've written a new ABC that can "
"describe an existing type or class, or if you want to declare that some "
"third-party class implements an ABC. For example, if you defined a :class:"
"`PrintableType` ABC, it's legal to do::"
msgstr ""
"Para las clases que usted escribe, derivar del ABC es probablemente más "
"claro. El método :meth:`register` es útil cuando has escrito un nuevo ABC "
"que puede describir un tipo o clase existente, o si quieres declarar que "
"alguna clase de terceros implementa un ABC. Por ejemplo, si has definido un :"
"class:`PrintableType` ABC, es legal hacer::"
#: ../Doc/whatsnew/2.6.rst:1225
msgid ""
"Classes should obey the semantics specified by an ABC, but Python can't "
"check this; it's up to the class author to understand the ABC's requirements "
"and to implement the code accordingly."
msgstr ""
"Las clases deben obedecer la semántica especificada por un ABC, pero Python "
"no puede comprobarlo; depende del autor de la clase entender los requisitos "
"del ABC e implementar el código en consecuencia."
#: ../Doc/whatsnew/2.6.rst:1229
msgid ""
"To check whether an object supports a particular interface, you can now "
"write::"
msgstr ""
"Para comprobar si un objeto es compatible con una determinada interfaz, "
"ahora se puede escribir::"
#: ../Doc/whatsnew/2.6.rst:1236
msgid ""
"Don't feel that you must now begin writing lots of checks as in the above "
"example. Python has a strong tradition of duck-typing, where explicit type-"
"checking is never done and code simply calls methods on an object, trusting "
"that those methods will be there and raising an exception if they aren't. "
"Be judicious in checking for ABCs and only do it where it's absolutely "
"necessary."
msgstr ""
"No sientas que ahora debes empezar a escribir muchas comprobaciones como en "
"el ejemplo anterior. Python tiene una fuerte tradición de \"duck-typing\", "
"donde la comprobación explícita de tipos nunca se hace y el código "
"simplemente llama a los métodos de un objeto, confiando en que esos métodos "
"estarán ahí y lanzando una excepción si no lo están. Sea juicioso al "
"comprobar el ABC y hágalo sólo cuando sea absolutamente necesario."
#: ../Doc/whatsnew/2.6.rst:1243
msgid ""
"You can write your own ABCs by using ``abc.ABCMeta`` as the metaclass in a "
"class definition::"
msgstr ""
"Puedes escribir tu propio ABC utilizando ``abc.ABCMeta`` como metaclase en "
"una definición de clase::"
#: ../Doc/whatsnew/2.6.rst:1264
msgid ""
"In the :class:`Drawable` ABC above, the :meth:`draw_doubled` method renders "
"the object at twice its size and can be implemented in terms of other "
"methods described in :class:`Drawable`. Classes implementing this ABC "
"therefore don't need to provide their own implementation of :meth:"
"`draw_doubled`, though they can do so. An implementation of :meth:`draw` is "
"necessary, though; the ABC can't provide a useful generic implementation."
msgstr ""
"En el ABC de :class:`Drawable` anterior, el método :meth:`draw_doubled` "
"renderiza el objeto al doble de su tamaño y puede ser implementado en "
"términos de otros métodos descritos en :class:`Drawable`. Las clases que "
"implementan este ABC no necesitan proporcionar su propia implementación de :"
"meth:`draw_doubled`, aunque pueden hacerlo. Sin embargo, es necesaria una "
"implementación de :meth:`draw`; el ABC no puede proporcionar una "
"implementación genérica útil."
#: ../Doc/whatsnew/2.6.rst:1272
msgid ""
"You can apply the ``@abstractmethod`` decorator to methods such as :meth:"
"`draw` that must be implemented; Python will then raise an exception for "
"classes that don't define the method. Note that the exception is only raised "
"when you actually try to create an instance of a subclass lacking the "
"method::"
msgstr ""
"Puedes aplicar el decorador ``@abstractmethod`` a métodos como :meth:`draw` "
"que deben ser implementados; Python lanzará una excepción para las clases "
"que no definan el método. Ten en cuenta que la excepción sólo se produce "
"cuando intentas crear una instancia de una subclase que carece del método::"
#: ../Doc/whatsnew/2.6.rst:1287
msgid ""
"Abstract data attributes can be declared using the ``@abstractproperty`` "
"decorator::"
msgstr ""
"Los atributos de datos abstractos pueden declararse utilizando el decorador "
"``@abstractproperty``::"
#: ../Doc/whatsnew/2.6.rst:1297
msgid "Subclasses must then define a :meth:`readonly` property."
msgstr "Las subclases deben definir una propiedad :meth:`readonly`."
#: ../Doc/whatsnew/2.6.rst:1303
msgid ":pep:`3119` - Introducing Abstract Base Classes"
msgstr ":pep:`3119` - Presentación de las clases base abstractas"
#: ../Doc/whatsnew/2.6.rst:1302
msgid ""
"PEP written by Guido van Rossum and Talin. Implemented by Guido van Rossum. "
"Backported to 2.6 by Benjamin Aranguren, with Alex Martelli."
msgstr ""
"PEP escrito por Guido van Rossum y Talin. Implementado por Guido van Rossum. "
"Adaptado a la versión 2.6 por Benjamin Aranguren, con Alex Martelli."
#: ../Doc/whatsnew/2.6.rst:1311
msgid "PEP 3127: Integer Literal Support and Syntax"
msgstr "PEP 3127: Soporte y sintaxis de literales enteros"
#: ../Doc/whatsnew/2.6.rst:1313
msgid ""
"Python 3.0 changes the syntax for octal (base-8) integer literals, prefixing "
"them with \"0o\" or \"0O\" instead of a leading zero, and adds support for "
"binary (base-2) integer literals, signalled by a \"0b\" or \"0B\" prefix."
msgstr ""
"Python 3.0 cambia la sintaxis de los literales enteros octales (base-8), "
"prefijándolos con \"0o\" o \"0O\" en lugar de un cero inicial, y añade "
"soporte para los literales enteros binarios (base-2), señalados con un "
"prefijo \"0b\" o \"0B\"."
#: ../Doc/whatsnew/2.6.rst:1318
msgid ""
"Python 2.6 doesn't drop support for a leading 0 signalling an octal number, "
"but it does add support for \"0o\" and \"0b\"::"
msgstr ""
"Python 2.6 no elimina el soporte para el 0 inicial que señala un número "
"octal, pero sí añade soporte para \"0o\" y \"0b\"::"
#: ../Doc/whatsnew/2.6.rst:1326
msgid ""
"The :func:`oct` builtin still returns numbers prefixed with a leading zero, "
"and a new :func:`bin` builtin returns the binary representation for a "
"number::"
msgstr ""
"La función :func:`oct` sigue devolviendo números prefijados con un cero a la "
"izquierda, y la nueva función :func:`bin` devuelve la representación binaria "
"de un número::"
#: ../Doc/whatsnew/2.6.rst:1337
msgid ""
"The :func:`int` and :func:`long` builtins will now accept the \"0o\" and "
"\"0b\" prefixes when base-8 or base-2 are requested, or when the *base* "
"argument is zero (signalling that the base used should be determined from "
"the string)::"
msgstr ""
"Las funciones built-in :func:`int` y :func:`long` aceptarán ahora los "
"prefijos \"0o\" y \"0b\" cuando se solicite base-8 o base-2, o cuando el "
"argumento *base* sea cero (indicando que la base utilizada debe determinarse "
"a partir de la cadena)::"
#: ../Doc/whatsnew/2.6.rst:1355
msgid ":pep:`3127` - Integer Literal Support and Syntax"
msgstr ":pep:`3127` - Soporte y sintaxis de literales enteros"
#: ../Doc/whatsnew/2.6.rst:1355
msgid "PEP written by Patrick Maupin; backported to 2.6 by Eric Smith."
msgstr "PEP escrito por Patrick Maupin; retroalimentado a 2.6 por Eric Smith."
#: ../Doc/whatsnew/2.6.rst:1363
msgid "PEP 3129: Class Decorators"
msgstr "PEP 3129: Decoradores de clase"
#: ../Doc/whatsnew/2.6.rst:1365
msgid ""
"Decorators have been extended from functions to classes. It's now legal to "
"write::"
msgstr ""
"Los decoradores se han ampliado de funciones a clases. Ahora es legal "
"escribir::"
#: ../Doc/whatsnew/2.6.rst:1373
msgid "This is equivalent to::"
msgstr "Esto equivale a::"
#: ../Doc/whatsnew/2.6.rst:1382
msgid ":pep:`3129` - Class Decorators"
msgstr ":pep:`3129` - Decoradores de clase"
#: ../Doc/whatsnew/2.6.rst:1383
msgid "PEP written by Collin Winter."
msgstr "PEP escrito por Collin Winter."
#: ../Doc/whatsnew/2.6.rst:1390
msgid "PEP 3141: A Type Hierarchy for Numbers"
msgstr "PEP 3141: Una jerarquía de tipos para los números"
#: ../Doc/whatsnew/2.6.rst:1392
msgid ""
"Python 3.0 adds several abstract base classes for numeric types inspired by "
"Scheme's numeric tower. These classes were backported to 2.6 as the :mod:"
"`numbers` module."
msgstr ""
"Python 3.0 añade varias clases base abstractas para tipos numéricos "
"inspiradas en la torre numérica de Scheme. Estas clases fueron retrocedidas "
"a la versión 2.6 como el módulo :mod:`numbers`."
#: ../Doc/whatsnew/2.6.rst:1396
msgid ""
"The most general ABC is :class:`Number`. It defines no operations at all, "
"and only exists to allow checking if an object is a number by doing "
"``isinstance(obj, Number)``."
msgstr ""
"El ABC más general es :class:`Number`. No define ninguna operación, y sólo "
"existe para permitir comprobar si un objeto es un número haciendo "
"``isinstance(obj, Number)``."
#: ../Doc/whatsnew/2.6.rst:1400
msgid ""
":class:`Complex` is a subclass of :class:`Number`. Complex numbers can "
"undergo the basic operations of addition, subtraction, multiplication, "
"division, and exponentiation, and you can retrieve the real and imaginary "
"parts and obtain a number's conjugate. Python's built-in complex type is an "
"implementation of :class:`Complex`."
msgstr ""
":class:`Complex` es una subclase de :class:`Number`. Los números complejos "
"pueden someterse a las operaciones básicas de suma, resta, multiplicación, "
"división y exponenciación, y se pueden recuperar las partes real e "
"imaginaria y obtener el conjugado de un número. El tipo complejo "
"incorporado en Python es una implementación de :class:`Complex`."
#: ../Doc/whatsnew/2.6.rst:1406
msgid ""
":class:`Real` further derives from :class:`Complex`, and adds operations "
"that only work on real numbers: :func:`floor`, :func:`trunc`, rounding, "
"taking the remainder mod N, floor division, and comparisons."
msgstr ""
":class:`Real` deriva a su vez de :class:`Complex`, y añade operaciones que "
"sólo funcionan con números reales: :func:`floor`, :func:`trunc`, redondeo, "
"toma del resto mod N, división entera a la baja y comparaciones."
#: ../Doc/whatsnew/2.6.rst:1411
msgid ""
":class:`Rational` numbers derive from :class:`Real`, have :attr:`numerator` "
"and :attr:`denominator` properties, and can be converted to floats. Python "
"2.6 adds a simple rational-number class, :class:`Fraction`, in the :mod:"
"`fractions` module. (It's called :class:`Fraction` instead of :class:"
"`Rational` to avoid a name clash with :class:`numbers.Rational`.)"
msgstr ""
"Los números :class:`Rational` derivan de :class:`Real`, tienen las "
"propiedades :attr:`numerator` y :attr:`denominator`, y se pueden convertir "
"en flotantes. Python 2.6 añade una clase simple de números racionales, :"
"class:`Fraction`, en el módulo :mod:`fractions`. (Se llama :class:"
"`Fraction` en lugar de :class:`Rational` para evitar un choque de nombres "
"con :class:`numbers.Rational`)"
#: ../Doc/whatsnew/2.6.rst:1418
msgid ""
":class:`Integral` numbers derive from :class:`Rational`, and can be shifted "
"left and right with ``<<`` and ``>>``, combined using bitwise operations "
"such as ``&`` and ``|``, and can be used as array indexes and slice "
"boundaries."
msgstr ""
"Los números de :class:`Integral` derivan de :class:`Rational`, y pueden "
"desplazarse a la izquierda y a la derecha con ``<`` y ``>```, combinarse "
"utilizando operaciones de bits como ``&`` y ``|``, y pueden utilizarse como "
"índices de matrices y límites de cortes."
#: ../Doc/whatsnew/2.6.rst:1423
msgid ""
"In Python 3.0, the PEP slightly redefines the existing builtins :func:"
"`round`, :func:`math.floor`, :func:`math.ceil`, and adds a new one, :func:"
"`math.trunc`, that's been backported to Python 2.6. :func:`math.trunc` "
"rounds toward zero, returning the closest :class:`Integral` that's between "
"the function's argument and zero."
msgstr ""
"En Python 3.0, el PEP redefine ligeramente las funciones integradas "
"existentes :func:`round`, :func:`math.floor`, :func:`math.ceil`, y añade uno "
"nuevo, :func:`math.trunc`, que ha sido retrocedido a Python 2.6. :func:`math."
"trunc` redondea hacia cero, devolviendo el :class:`Integral` más cercano que "
"esté entre el argumento de la función y cero."
#: ../Doc/whatsnew/2.6.rst:1432
msgid ":pep:`3141` - A Type Hierarchy for Numbers"
msgstr ":pep:`3141` - Una jerarquía de tipos para los números"
#: ../Doc/whatsnew/2.6.rst:1432
msgid "PEP written by Jeffrey Yasskin."
msgstr "PEP escrito por Jeffrey Yasskin."
#: ../Doc/whatsnew/2.6.rst:1434
msgid ""
"`Scheme's numerical tower `__, from the Guile manual."
msgstr ""
"`Torre numérica del esquema `__, del manual de Guile."
#: ../Doc/whatsnew/2.6.rst:1436
msgid ""
"`Scheme's number datatypes `__ from the R5RS "
"Scheme specification."
msgstr ""
"`Scheme's number datatypes `__ de la "
"especificación del esquema R5RS."
#: ../Doc/whatsnew/2.6.rst:1440
msgid "The :mod:`fractions` Module"
msgstr "El módulo :mod:`fractions`"
#: ../Doc/whatsnew/2.6.rst:1442
msgid ""
"To fill out the hierarchy of numeric types, the :mod:`fractions` module "
"provides a rational-number class. Rational numbers store their values as a "
"numerator and denominator forming a fraction, and can exactly represent "
"numbers such as ``2/3`` that floating-point numbers can only approximate."
msgstr ""
"Para completar la jerarquía de tipos numéricos, el módulo :mod:`fractions` "
"proporciona una clase de números racionales. Los números racionales "
"almacenan sus valores como un numerador y un denominador que forman una "
"fracción, y pueden representar exactamente números como ``2/3`` que los "
"números de punto flotante sólo pueden aproximar."
#: ../Doc/whatsnew/2.6.rst:1448
msgid ""
"The :class:`Fraction` constructor takes two :class:`Integral` values that "
"will be the numerator and denominator of the resulting fraction. ::"
msgstr ""
"El constructor :class:`Fraction` toma dos valores :class:`Integral` que "
"serán el numerador y el denominador de la fracción resultante. ::"
#: ../Doc/whatsnew/2.6.rst:1461
msgid ""
"For converting floating-point numbers to rationals, the float type now has "
"an :meth:`as_integer_ratio()` method that returns the numerator and "
"denominator for a fraction that evaluates to the same floating-point value::"
msgstr ""
"Para convertir números de punto flotante en racionales, el tipo float tiene "
"ahora un método :meth:`as_integer_ratio()` que devuelve el numerador y el "
"denominador de una fracción que se evalúa al mismo valor de punto flotante::"
#: ../Doc/whatsnew/2.6.rst:1473
msgid ""
"Note that values that can only be approximated by floating-point numbers, "
"such as 1./3, are not simplified to the number being approximated; the "
"fraction attempts to match the floating-point value **exactly**."
msgstr ""
"Tenga en cuenta que los valores que sólo pueden ser aproximados por números "
"de punto flotante, como 1,/3, no se simplifican al número que se está "
"aproximando; la fracción intenta coincidir con el valor de punto flotante "
"**exactamente**."
#: ../Doc/whatsnew/2.6.rst:1478
msgid ""
"The :mod:`fractions` module is based upon an implementation by Sjoerd "
"Mullender that was in Python's :file:`Demo/classes/` directory for a long "
"time. This implementation was significantly updated by Jeffrey Yasskin."
msgstr ""
"El módulo :mod:`fractions` se basa en una implementación de Sjoerd Mullender "
"que estuvo en el directorio :file:`Demo/classes/` de Python durante mucho "
"tiempo. Esta implementación fue significativamente actualizada por Jeffrey "
"Yasskin."
#: ../Doc/whatsnew/2.6.rst:1485
msgid "Other Language Changes"
msgstr "Otros cambios lingüísticos"
#: ../Doc/whatsnew/2.6.rst:1487
msgid "Some smaller changes made to the core Python language are:"
msgstr ""
"Algunos de los cambios más pequeños realizados en el núcleo del lenguaje "
"Python son:"
#: ../Doc/whatsnew/2.6.rst:1489
msgid ""
"Directories and zip archives containing a :file:`__main__.py` file can now "
"be executed directly by passing their name to the interpreter. The directory "
"or zip archive is automatically inserted as the first entry in sys.path. "
"(Suggestion and initial patch by Andy Chu, subsequently revised by Phillip "
"J. Eby and Nick Coghlan; :issue:`1739468`.)"
msgstr ""
"Los directorios y archivos zip que contengan un archivo :file:`__main__.py` "
"pueden ahora ejecutarse directamente pasando su nombre al intérprete. El "
"directorio o archivo zip se inserta automáticamente como la primera entrada "
"en sys.path. (Sugerencia y parche inicial de Andy Chu, revisado "
"posteriormente por Phillip J. Eby y Nick Coghlan; :issue:`1739468`)"
#: ../Doc/whatsnew/2.6.rst:1496
msgid ""
"The :func:`hasattr` function was catching and ignoring all errors, under the "
"assumption that they meant a :meth:`__getattr__` method was failing somehow "
"and the return value of :func:`hasattr` would therefore be ``False``. This "
"logic shouldn't be applied to :exc:`KeyboardInterrupt` and :exc:"
"`SystemExit`, however; Python 2.6 will no longer discard such exceptions "
"when :func:`hasattr` encounters them. (Fixed by Benjamin Peterson; :issue:"
"`2196`.)"
msgstr ""
"La función :func:`hasattr` estaba capturando e ignorando todos los errores, "
"bajo la suposición de que significaban que un método :meth:`__getattr__` "
"estaba fallando de alguna manera y que el valor de retorno de :func:"
"`hasattr` sería por tanto ``False``. Esta lógica no debería aplicarse a :"
"exc:`KeyboardInterrupt` y :exc:`SystemExit`, sin embargo; Python 2.6 ya no "
"descartará tales excepciones cuando :func:`hasattr` las encuentre. "
"(Corregido por Benjamin Peterson; :issue:`2196`.)"
#: ../Doc/whatsnew/2.6.rst:1504
msgid ""
"When calling a function using the ``**`` syntax to provide keyword "
"arguments, you are no longer required to use a Python dictionary; any "
"mapping will now work::"
msgstr ""
"Cuando se llama a una función utilizando la sintaxis ``**`` para "
"proporcionar argumentos de palabras clave, ya no es necesario utilizar un "
"diccionario de Python; ahora funcionará cualquier asignación::"
#: ../Doc/whatsnew/2.6.rst:1517
msgid "(Contributed by Alexander Belopolsky; :issue:`1686487`.)"
msgstr "(Contribución de Alexander Belopolsky; :issue:`1686487`.)"
#: ../Doc/whatsnew/2.6.rst:1519
msgid ""
"It's also become legal to provide keyword arguments after a ``*args`` "
"argument to a function call. ::"
msgstr ""
"También se ha convertido en legal proporcionar argumentos de palabras clave "
"después de un argumento ``*args`` a una llamada de función. ::"
#: ../Doc/whatsnew/2.6.rst:1528
msgid ""
"Previously this would have been a syntax error. (Contributed by Amaury "
"Forgeot d'Arc; :issue:`3473`.)"
msgstr ""
"Anteriormente, esto habría sido un error de sintaxis. (Contribución de "
"Amaury Forgeot d'Arc; :issue:`3473`.)"
#: ../Doc/whatsnew/2.6.rst:1531
msgid ""
"A new builtin, ``next(iterator, [default])`` returns the next item from the "
"specified iterator. If the *default* argument is supplied, it will be "
"returned if *iterator* has been exhausted; otherwise, the :exc:"
"`StopIteration` exception will be raised. (Backported in :issue:`2719`.)"
msgstr ""
"Un nuevo builtin, ``next(iterator, [default])`` devuelve el siguiente "
"elemento del iterador especificado. Si se suministra el argumento "
"*default*, se devolverá si *iterador* se ha agotado; en caso contrario, se "
"lanzará la excepción :exc:`StopIteration`. (Se ha modificado en :issue:"
"`2719`.)"
#: ../Doc/whatsnew/2.6.rst:1537
msgid ""
"Tuples now have :meth:`index` and :meth:`count` methods matching the list "
"type's :meth:`index` and :meth:`count` methods::"
msgstr ""
"Las tuplas tienen ahora métodos :meth:`index` y :meth:`count` que coinciden "
"con los métodos :meth:`index` y :meth:`count` del tipo lista::"
#: ../Doc/whatsnew/2.6.rst:1546
msgid "(Contributed by Raymond Hettinger)"
msgstr "(Contribución de Raymond Hettinger)"
#: ../Doc/whatsnew/2.6.rst:1548
msgid ""
"The built-in types now have improved support for extended slicing syntax, "
"accepting various combinations of ``(start, stop, step)``. Previously, the "
"support was partial and certain corner cases wouldn't work. (Implemented by "
"Thomas Wouters.)"
msgstr ""
"Los tipos incorporados tienen ahora un soporte mejorado para la sintaxis de "
"corte extendida, aceptando varias combinaciones de ``(inicio, parada, "
"paso)``. Anteriormente, el soporte era parcial y algunos casos de esquina no "
"funcionaban. (Implementado por Thomas Wouters)"
#: ../Doc/whatsnew/2.6.rst:1555
msgid ""
"Properties now have three attributes, :attr:`getter`, :attr:`setter` and :"
"attr:`deleter`, that are decorators providing useful shortcuts for adding a "
"getter, setter or deleter function to an existing property. You would use "
"them like this::"
msgstr ""
"Las propiedades tienen ahora tres atributos, :attr:`getter`, :attr:`setter` "
"y :attr:`deleter`, que son decoradores que proporcionan atajos útiles para "
"añadir una función getter, setter o deleter a una propiedad existente. Los "
"usarás así::"
#: ../Doc/whatsnew/2.6.rst:1582
msgid ""
"Several methods of the built-in set types now accept multiple iterables: :"
"meth:`intersection`, :meth:`intersection_update`, :meth:`union`, :meth:"
"`update`, :meth:`difference` and :meth:`difference_update`."
msgstr ""
"Varios métodos de los tipos de conjuntos incorporados aceptan ahora "
"múltiples iterables: :meth:`intersection`, :meth:`intersection_update`, :"
"meth:`union`, :meth:`update`, :meth:`difference` y :meth:`difference_update`."
#: ../Doc/whatsnew/2.6.rst:1596 ../Doc/whatsnew/2.6.rst:1880
#: ../Doc/whatsnew/2.6.rst:1901
msgid "(Contributed by Raymond Hettinger.)"
msgstr "(Contribución de Raymond Hettinger.)"
#: ../Doc/whatsnew/2.6.rst:1598
msgid ""
"Many floating-point features were added. The :func:`float` function will "
"now turn the string ``nan`` into an IEEE 754 Not A Number value, and "
"``+inf`` and ``-inf`` into positive or negative infinity. This works on any "
"platform with IEEE 754 semantics. (Contributed by Christian Heimes; :issue:"
"`1635`.)"
msgstr ""
"Se han añadido muchas funciones de punto flotante. La función :func:`float` "
"ahora convertirá la cadena ``nan`` en un valor IEEE 754 Not A Number, y "
"``+inf`` y ``-inf`` en infinito positivo o negativo. Esto funciona en "
"cualquier plataforma con semántica IEEE 754. (Contribución de Christian "
"Heimes; :issue:`1635`.)"
#: ../Doc/whatsnew/2.6.rst:1604
msgid ""
"Other functions in the :mod:`math` module, :func:`isinf` and :func:`isnan`, "
"return true if their floating-point argument is infinite or Not A Number. (:"
"issue:`1640`)"
msgstr ""
"Otras funciones del módulo :mod:`math`, :func:`isinf` y :func:`isnan`, "
"devuelven true si su argumento en coma flotante es infinito o No es un "
"número. (:issue:`1640`)"
#: ../Doc/whatsnew/2.6.rst:1608
msgid ""
"Conversion functions were added to convert floating-point numbers into "
"hexadecimal strings (:issue:`3008`). These functions convert floats to and "
"from a string representation without introducing rounding errors from the "
"conversion between decimal and binary. Floats have a :meth:`hex` method "
"that returns a string representation, and the ``float.fromhex()`` method "
"converts a string back into a number::"
msgstr ""
"Se han añadido funciones de conversión para convertir números de punto "
"flotante en cadenas hexadecimales (:issue:`3008`). Estas funciones "
"convierten los números flotantes a y desde una representación de cadena sin "
"introducir errores de redondeo por la conversión entre decimal y binario. "
"Los flotadores tienen un método :meth:`hex` que devuelve una representación "
"de cadena, y el método ``float.fromhex()`` convierte una cadena de nuevo en "
"un número::"
#: ../Doc/whatsnew/2.6.rst:1625
msgid ""
"A numerical nicety: when creating a complex number from two floats on "
"systems that support signed zeros (-0 and +0), the :func:`complex` "
"constructor will now preserve the sign of the zero. (Fixed by Mark T. "
"Dickinson; :issue:`1507`.)"
msgstr ""
"Un detalle numérico: cuando se crea un número complejo a partir de dos "
"flotantes en sistemas que admiten ceros con signo (-0 y +0), el constructor :"
"func:`complex` conserva ahora el signo del cero. (Corregido por Mark T. "
"Dickinson; :issue:`1507`.)"
#: ../Doc/whatsnew/2.6.rst:1630
msgid ""
"Classes that inherit a :meth:`__hash__` method from a parent class can set "
"``__hash__ = None`` to indicate that the class isn't hashable. This will "
"make ``hash(obj)`` raise a :exc:`TypeError` and the class will not be "
"indicated as implementing the :class:`Hashable` ABC."
msgstr ""
"Las clases que heredan un método :meth:`__hash__` de una clase padre pueden "
"establecer ``__hash__ = None`` para indicar que la clase no es hashable. "
"Esto hará que ``hash(obj)`` lance un :exc:`TypeError` y la clase no será "
"indicada como implementando el ABC de :class:`Hashable`."
#: ../Doc/whatsnew/2.6.rst:1636
msgid ""
"You should do this when you've defined a :meth:`__cmp__` or :meth:`__eq__` "
"method that compares objects by their value rather than by identity. All "
"objects have a default hash method that uses ``id(obj)`` as the hash value. "
"There's no tidy way to remove the :meth:`__hash__` method inherited from a "
"parent class, so assigning ``None`` was implemented as an override. At the "
"C level, extensions can set ``tp_hash`` to :c:func:"
"`PyObject_HashNotImplemented`. (Fixed by Nick Coghlan and Amaury Forgeot "
"d'Arc; :issue:`2235`.)"
msgstr ""
"Debes hacer esto cuando hayas definido un método :meth:`__cmp__` o :meth:"
"`__eq__` que compare objetos por su valor en lugar de por su identidad. "
"Todos los objetos tienen un método hash por defecto que utiliza ``id(obj)`` "
"como valor hash. No hay una forma ordenada de eliminar el método :meth:"
"`__hash__` heredado de una clase padre, por lo que la asignación de ``None`` "
"fue implementada como una sobreescritura. A nivel de C, las extensiones "
"pueden establecer ``tp_hash`` a :c:func:`PyObject_HashNotImplemented`. "
"(Corregido por Nick Coghlan y Amaury Forgeot d'Arc; :issue:`2235`.)"
#: ../Doc/whatsnew/2.6.rst:1646
msgid ""
"The :exc:`GeneratorExit` exception now subclasses :exc:`BaseException` "
"instead of :exc:`Exception`. This means that an exception handler that does "
"``except Exception:`` will not inadvertently catch :exc:`GeneratorExit`. "
"(Contributed by Chad Austin; :issue:`1537`.)"
msgstr ""
"La excepción :exc:`GeneratorExit` ahora subclasa :exc:`BaseException` en "
"lugar de :exc:`Exception`. Esto significa que un manejador de excepciones "
"que haga ``except Exception:`` no atrapará inadvertidamente :exc:"
"`GeneratorExit`. (Contribuido por Chad Austin; :issue:`1537`.)"
#: ../Doc/whatsnew/2.6.rst:1652
msgid ""
"Generator objects now have a :attr:`gi_code` attribute that refers to the "
"original code object backing the generator. (Contributed by Collin Winter; :"
"issue:`1473257`.)"
msgstr ""
"Los objetos generadores tienen ahora un atributo :attr:`gi_code` que hace "
"referencia al objeto de código original que respalda al generador. "
"(Contribución de Collin Winter; :issue:`1473257`.)"
#: ../Doc/whatsnew/2.6.rst:1656
msgid ""
"The :func:`compile` built-in function now accepts keyword arguments as well "
"as positional parameters. (Contributed by Thomas Wouters; :issue:`1444529`.)"
msgstr ""
"La función incorporada :func:`compile` ahora acepta argumentos de palabras "
"clave así como parámetros posicionales. (Contribución de Thomas Wouters; :"
"issue:`1444529`.)"
#: ../Doc/whatsnew/2.6.rst:1660
msgid ""
"The :func:`complex` constructor now accepts strings containing parenthesized "
"complex numbers, meaning that ``complex(repr(cplx))`` will now round-trip "
"values. For example, ``complex('(3+4j)')`` now returns the value (3+4j). (:"
"issue:`1491866`)"
msgstr ""
"El constructor :func:`complex` ahora acepta cadenas que contengan números "
"complejos entre paréntesis, lo que significa que ``complex(repr(cplx))`` "
"ahora redondeará los valores. Por ejemplo, ``complex('(3+4j)')`` ahora "
"devuelve el valor (3+4j). (:issue:`1491866`)"
#: ../Doc/whatsnew/2.6.rst:1665
msgid ""
"The string :meth:`translate` method now accepts ``None`` as the translation "
"table parameter, which is treated as the identity transformation. This "
"makes it easier to carry out operations that only delete characters. "
"(Contributed by Bengt Richter and implemented by Raymond Hettinger; :issue:"
"`1193128`.)"
msgstr ""
"El método string :meth:`translate` acepta ahora ``None`` como parámetro de "
"la tabla de traducción, que se trata como la transformación de identidad. "
"Esto facilita la realización de operaciones que sólo eliminan caracteres. "
"(Contribuido por Bengt Richter e implementado por Raymond Hettinger; :issue:"
"`1193128`)"
#: ../Doc/whatsnew/2.6.rst:1671
msgid ""
"The built-in :func:`dir` function now checks for a :meth:`__dir__` method on "
"the objects it receives. This method must return a list of strings "
"containing the names of valid attributes for the object, and lets the object "
"control the value that :func:`dir` produces. Objects that have :meth:"
"`__getattr__` or :meth:`__getattribute__` methods can use this to advertise "
"pseudo-attributes they will honor. (:issue:`1591665`)"
msgstr ""
"La función incorporada :func:`dir` ahora comprueba si existe un método :meth:"
"`__dir__` en los objetos que recibe. Este método debe devolver una lista de "
"cadenas que contengan los nombres de los atributos válidos para el objeto, y "
"permite al objeto controlar el valor que :func:`dir` produce. Los objetos "
"que tienen métodos :meth:`__getattr__` o :meth:`__getattribute__` pueden "
"usar esto para anunciar los pseudo-atributos que respetarán. (:issue:"
"`1591665`)"
#: ../Doc/whatsnew/2.6.rst:1679
msgid ""
"Instance method objects have new attributes for the object and function "
"comprising the method; the new synonym for :attr:`im_self` is :attr:"
"`__self__`, and :attr:`im_func` is also available as :attr:`__func__`. The "
"old names are still supported in Python 2.6, but are gone in 3.0."
msgstr ""
"Los objetos de método de instancia tienen nuevos atributos para el objeto y "
"la función que comprende el método; el nuevo sinónimo de :attr:`im_self` es :"
"attr:`__self__`, y :attr:`im_func` también está disponible como :attr:"
"`__func__`. Los nombres antiguos todavía se soportan en Python 2.6, pero han "
"desaparecido en la 3.0."
#: ../Doc/whatsnew/2.6.rst:1684
msgid ""
"An obscure change: when you use the :func:`locals` function inside a :"
"keyword:`class` statement, the resulting dictionary no longer returns free "
"variables. (Free variables, in this case, are variables referenced in the :"
"keyword:`!class` statement that aren't attributes of the class.)"
msgstr ""
"Un cambio oscuro: cuando se utiliza la función :func:`locals` dentro de una "
"sentencia :keyword:`class`, el diccionario resultante ya no devuelve "
"variables libres. (Las variables libres, en este caso, son variables "
"referenciadas en la sentencia :keyword:`!class` que no son atributos de la "
"clase)"
#: ../Doc/whatsnew/2.6.rst:1693
msgid "Optimizations"
msgstr "Optimizaciones"
#: ../Doc/whatsnew/2.6.rst:1695
msgid ""
"The :mod:`warnings` module has been rewritten in C. This makes it possible "
"to invoke warnings from the parser, and may also make the interpreter's "
"startup faster. (Contributed by Neal Norwitz and Brett Cannon; :issue:"
"`1631171`.)"
msgstr ""
"El módulo :mod:`warnings` ha sido reescrito en C. Esto hace posible invocar "
"advertencias desde el analizador sintáctico, y también puede hacer que el "
"arranque del intérprete sea más rápido. (Contribuido por Neal Norwitz y "
"Brett Cannon; :issue:`1631171`.)"
#: ../Doc/whatsnew/2.6.rst:1700
msgid ""
"Type objects now have a cache of methods that can reduce the work required "
"to find the correct method implementation for a particular class; once "
"cached, the interpreter doesn't need to traverse base classes to figure out "
"the right method to call. The cache is cleared if a base class or the class "
"itself is modified, so the cache should remain correct even in the face of "
"Python's dynamic nature. (Original optimization implemented by Armin Rigo, "
"updated for Python 2.6 by Kevin Jacobs; :issue:`1700288`.)"
msgstr ""
"Los objetos de tipo tienen ahora una caché de métodos que puede reducir el "
"trabajo necesario para encontrar la implementación del método correcto para "
"una clase en particular; una vez almacenada en la caché, el intérprete no "
"necesita recorrer las clases base para averiguar el método correcto a "
"llamar. La caché se borra si una clase base o la propia clase se modifica, "
"por lo que la caché debería seguir siendo correcta incluso ante la "
"naturaleza dinámica de Python. (Optimización original implementada por Armin "
"Rigo, actualizada para Python 2.6 por Kevin Jacobs; :issue:`1700288`.)"
#: ../Doc/whatsnew/2.6.rst:1710
msgid ""
"By default, this change is only applied to types that are included with the "
"Python core. Extension modules may not necessarily be compatible with this "
"cache, so they must explicitly add :c:macro:`Py_TPFLAGS_HAVE_VERSION_TAG` to "
"the module's ``tp_flags`` field to enable the method cache. (To be "
"compatible with the method cache, the extension module's code must not "
"directly access and modify the ``tp_dict`` member of any of the types it "
"implements. Most modules don't do this, but it's impossible for the Python "
"interpreter to determine that. See :issue:`1878` for some discussion.)"
msgstr ""
"Por defecto, este cambio sólo se aplica a los tipos que se incluyen con el "
"núcleo de Python. Los módulos de extensión no son necesariamente "
"compatibles con esta caché, por lo que deben añadir explícitamente :c:macro:"
"`Py_TPFLAGS_HAVE_VERSION_TAG` al campo ``tp_flags`` del módulo para "
"habilitar la caché de métodos. (Para ser compatible con la caché de métodos, "
"el código del módulo de extensión no debe acceder directamente ni modificar "
"el miembro ``tp_dict`` de ninguno de los tipos que implementa. La mayoría "
"de los módulos no lo hacen, pero es imposible que el intérprete de Python lo "
"determine. Ver :issue:`1878` para una discusión)"
#: ../Doc/whatsnew/2.6.rst:1721
msgid ""
"Function calls that use keyword arguments are significantly faster by doing "
"a quick pointer comparison, usually saving the time of a full string "
"comparison. (Contributed by Raymond Hettinger, after an initial "
"implementation by Antoine Pitrou; :issue:`1819`.)"
msgstr ""
"Las llamadas a funciones que utilizan argumentos de palabras clave son "
"significativamente más rápidas al hacer una comparación rápida de punteros, "
"lo que suele ahorrar el tiempo de una comparación completa de cadenas. "
"(Contribución de Raymond Hettinger, tras una implementación inicial de "
"Antoine Pitrou; :issue:`1819`)"
#: ../Doc/whatsnew/2.6.rst:1726
msgid ""
"All of the functions in the :mod:`struct` module have been rewritten in C, "
"thanks to work at the Need For Speed sprint. (Contributed by Raymond "
"Hettinger.)"
msgstr ""
"Todas las funciones del módulo :mod:`struct` han sido reescritas en C, "
"gracias al trabajo en el sprint de Need For Speed. (Contribución de Raymond "
"Hettinger)"
#: ../Doc/whatsnew/2.6.rst:1730
msgid ""
"Some of the standard built-in types now set a bit in their type objects. "
"This speeds up checking whether an object is a subclass of one of these "
"types. (Contributed by Neal Norwitz.)"
msgstr ""
"Algunos de los tipos estándar incorporados ahora establecen un bit en sus "
"objetos de tipo. Esto acelera la comprobación de si un objeto es una "
"subclase de uno de estos tipos. (Contribución de Neal Norwitz)"
#: ../Doc/whatsnew/2.6.rst:1734
msgid ""
"Unicode strings now use faster code for detecting whitespace and line "
"breaks; this speeds up the :meth:`split` method by about 25% and :meth:"
"`splitlines` by 35%. (Contributed by Antoine Pitrou.) Memory usage is "
"reduced by using pymalloc for the Unicode string's data."
msgstr ""
"Las cadenas Unicode utilizan ahora un código más rápido para detectar los "
"espacios en blanco y los saltos de línea; esto acelera el método :meth:"
"`split` en un 25% a y :meth:`splitlines` en un 35%. (Contribuido por Antoine "
"Pitrou.) El uso de la memoria se reduce utilizando pymalloc para los datos "
"de la cadena Unicode."
#: ../Doc/whatsnew/2.6.rst:1740
msgid ""
"The ``with`` statement now stores the :meth:`__exit__` method on the stack, "
"producing a small speedup. (Implemented by Jeffrey Yasskin.)"
msgstr ""
"La sentencia ``with`` ahora almacena el método :meth:`__exit__` en la pila, "
"produciendo un pequeño aumento de velocidad. (Implementado por Jeffrey "
"Yasskin)"
#: ../Doc/whatsnew/2.6.rst:1743
msgid ""
"To reduce memory usage, the garbage collector will now clear internal free "
"lists when garbage-collecting the highest generation of objects. This may "
"return memory to the operating system sooner."
msgstr ""
"Para reducir el uso de memoria, el recolector de basura ahora borrará las "
"listas libres internas cuando recolecte la generación más alta de objetos. "
"Esto puede devolver la memoria al sistema operativo antes."
#: ../Doc/whatsnew/2.6.rst:1752
msgid "Interpreter Changes"
msgstr "Cambios de intérprete"
#: ../Doc/whatsnew/2.6.rst:1754
msgid ""
"Two command-line options have been reserved for use by other Python "
"implementations. The :option:`-J` switch has been reserved for use by "
"Jython for Jython-specific options, such as switches that are passed to the "
"underlying JVM. :option:`-X` has been reserved for options specific to a "
"particular implementation of Python such as CPython, Jython, or IronPython. "
"If either option is used with Python 2.6, the interpreter will report that "
"the option isn't currently used."
msgstr ""
"Se han reservado dos opciones de la línea de comandos para su uso por otras "
"implementaciones de Python. La opción :option:`-J` se ha reservado para su "
"uso por parte de Jython para las opciones específicas de Jython, como los "
"interruptores que se pasan a la JVM subyacente. :option:`-X` se ha reservado "
"para las opciones específicas de una implementación particular de Python "
"como CPython, Jython o IronPython. Si cualquiera de estas opciones se "
"utiliza con Python 2.6, el intérprete informará de que la opción no se "
"utiliza actualmente."
#: ../Doc/whatsnew/2.6.rst:1762
msgid ""
"Python can now be prevented from writing :file:`.pyc` or :file:`.pyo` files "
"by supplying the :option:`-B` switch to the Python interpreter, or by "
"setting the :envvar:`PYTHONDONTWRITEBYTECODE` environment variable before "
"running the interpreter. This setting is available to Python programs as "
"the ``sys.dont_write_bytecode`` variable, and Python code can change the "
"value to modify the interpreter's behaviour. (Contributed by Neal Norwitz "
"and Georg Brandl.)"
msgstr ""
"Ahora se puede evitar que Python escriba archivos :file:`.pyc` o :file:`."
"pyo` proporcionando el modificador :option:`-B` al intérprete de Python, o "
"estableciendo la variable de entorno :envvar:`PYTHONDONTWRITEBYTECODE` antes "
"de ejecutar el intérprete. Esta configuración está disponible para los "
"programas de Python como la variable ``sys.dont_write_bytecode``, y el "
"código de Python puede cambiar el valor para modificar el comportamiento del "
"intérprete. (Contribución de Neal Norwitz y Georg Brandl)"
#: ../Doc/whatsnew/2.6.rst:1770
msgid ""
"The encoding used for standard input, output, and standard error can be "
"specified by setting the :envvar:`PYTHONIOENCODING` environment variable "
"before running the interpreter. The value should be a string in the form "
"```` or ``:``. The *encoding* part "
"specifies the encoding's name, e.g. ``utf-8`` or ``latin-1``; the optional "
"*errorhandler* part specifies what to do with characters that can't be "
"handled by the encoding, and should be one of \"error\", \"ignore\", or "
"\"replace\". (Contributed by Martin von Löwis.)"
msgstr ""
"La codificación utilizada para la entrada, la salida y el error estándar "
"puede especificarse estableciendo la variable de entorno :envvar:"
"`PYTHONIOENCODING` antes de ejecutar el intérprete. El valor debe ser una "
"cadena de la forma ```` o ``:``. La parte "
"*encoding* especifica el nombre de la codificación, por ejemplo ``utf-8`` o "
"``latin-1``; la parte opcional *errorhandler* especifica qué hacer con los "
"caracteres que no pueden ser manejados por la codificación, y debe ser una "
"de las opciones \"error\", \"ignorar\" o \"reemplazar\". (Contribución de "
"Martin von Löwis)"
#: ../Doc/whatsnew/2.6.rst:1783
msgid "New and Improved Modules"
msgstr "Módulos nuevos y mejorados"
#: ../Doc/whatsnew/2.6.rst:1785
msgid ""
"As in every release, Python's standard library received a number of "
"enhancements and bug fixes. Here's a partial list of the most notable "
"changes, sorted alphabetically by module name. Consult the :file:`Misc/NEWS` "
"file in the source tree for a more complete list of changes, or look through "
"the Subversion logs for all the details."
msgstr ""
"Como en cada versión, la biblioteca estándar de Python ha recibido una serie "
"de mejoras y correcciones de errores. Aquí hay una lista parcial de los "
"cambios más notables, ordenados alfabéticamente por nombre de módulo. "
"Consulta el archivo :file:`Misc/NEWS` en el árbol de fuentes para una lista "
"más completa de cambios, o mira los registros de Subversion para todos los "
"detalles."
#: ../Doc/whatsnew/2.6.rst:1791
msgid ""
"The :mod:`asyncore` and :mod:`asynchat` modules are being actively "
"maintained again, and a number of patches and bugfixes were applied. "
"(Maintained by Josiah Carlson; see :issue:`1736190` for one patch.)"
msgstr ""
"Los módulos :mod:`asyncore` y :mod:`asynchat` están siendo mantenidos "
"activamente de nuevo, y se han aplicado varios parches y correcciones de "
"errores. (Mantenido por Josiah Carlson; véase :issue:`1736190` para un "
"parche)"
#: ../Doc/whatsnew/2.6.rst:1796
msgid ""
"The :mod:`bsddb` module also has a new maintainer, Jesús Cea Avión, and the "
"package is now available as a standalone package. The web page for the "
"package is `www.jcea.es/programacion/pybsddb.htm `__. The plan is to remove the package from the "
"standard library in Python 3.0, because its pace of releases is much more "
"frequent than Python's."
msgstr ""
"El módulo :mod:`bsddb` también tiene un nuevo mantenedor, Jesús Cea Avión, y "
"el paquete está ahora disponible como paquete independiente. La página web "
"del paquete es `www.jcea.es/programacion/pybsddb.htm `__. El plan es eliminar el paquete de la "
"biblioteca estándar en Python 3.0, porque su ritmo de lanzamientos es mucho "
"más frecuente que el de Python."
#: ../Doc/whatsnew/2.6.rst:1804
msgid ""
"The :mod:`bsddb.dbshelve` module now uses the highest pickling protocol "
"available, instead of restricting itself to protocol 1. (Contributed by W. "
"Barnes.)"
msgstr ""
"El módulo :mod:`bsddb.dbshelve` utiliza ahora el protocolo de decapado más "
"alto disponible, en lugar de limitarse al protocolo 1. (Contribución de W. "
"Barnes.)"
#: ../Doc/whatsnew/2.6.rst:1808
msgid ""
"The :mod:`cgi` module will now read variables from the query string of an "
"HTTP POST request. This makes it possible to use form actions with URLs "
"that include query strings such as \"/cgi-bin/add.py?category=1\". "
"(Contributed by Alexandre Fiori and Nubis; :issue:`1817`.)"
msgstr ""
"El módulo :mod:`cgi` leerá ahora las variables de la cadena de consulta de "
"una petición HTTP POST. Esto permite utilizar acciones de formulario con "
"URLs que incluyen cadenas de consulta como \"/cgi-bin/add.py?category=1\". "
"(Contribución de Alexandre Fiori y Nubis; :issue:`1817`.)"
#: ../Doc/whatsnew/2.6.rst:1814
msgid ""
"The :func:`parse_qs` and :func:`parse_qsl` functions have been relocated "
"from the :mod:`cgi` module to the :mod:`urlparse` module. The versions still "
"available in the :mod:`cgi` module will trigger :exc:"
"`PendingDeprecationWarning` messages in 2.6 (:issue:`600362`)."
msgstr ""
"Las funciones :func:`parse_qs` y :func:`parse_qsl` han sido reubicadas del "
"módulo :mod:`cgi` al módulo :mod:`urlparse`. Las versiones aún disponibles "
"en el módulo :mod:`cgi` activarán los mensajes :exc:"
"`PendingDeprecationWarning` en la versión 2.6 (:issue:`600362`)."
#: ../Doc/whatsnew/2.6.rst:1820
msgid ""
"The :mod:`cmath` module underwent extensive revision, contributed by Mark "
"Dickinson and Christian Heimes. Five new functions were added:"
msgstr ""
"El módulo :mod:`cmath` ha sido objeto de una amplia revisión, a la que han "
"contribuido Mark Dickinson y Christian Heimes. Se han añadido cinco nuevas "
"funciones:"
#: ../Doc/whatsnew/2.6.rst:1824
msgid ""
":func:`polar` converts a complex number to polar form, returning the modulus "
"and argument of the complex number."
msgstr ""
":func:`polar` convierte un número complejo en forma polar, devolviendo el "
"módulo y el argumento del número complejo."
#: ../Doc/whatsnew/2.6.rst:1827
msgid ""
":func:`rect` does the opposite, turning a modulus, argument pair back into "
"the corresponding complex number."
msgstr ""
":func:`rect` hace lo contrario, convirtiendo un par de módulos y argumentos "
"en el correspondiente número complejo."
#: ../Doc/whatsnew/2.6.rst:1830
msgid ""
":func:`phase` returns the argument (also called the angle) of a complex "
"number."
msgstr ""
":func:`phase` devuelve el argumento (también llamado ángulo) de un número "
"complejo."
#: ../Doc/whatsnew/2.6.rst:1833
msgid ""
":func:`isnan` returns True if either the real or imaginary part of its "
"argument is a NaN."
msgstr ""
":func:`isnan` devuelve True si la parte real o imaginaria de su argumento es "
"un NaN."
#: ../Doc/whatsnew/2.6.rst:1836
msgid ""
":func:`isinf` returns True if either the real or imaginary part of its "
"argument is infinite."
msgstr ""
":func:`isinf` devuelve True si la parte real o imaginaria de su argumento es "
"infinita."
#: ../Doc/whatsnew/2.6.rst:1839
msgid ""
"The revisions also improved the numerical soundness of the :mod:`cmath` "
"module. For all functions, the real and imaginary parts of the results are "
"accurate to within a few units of least precision (ulps) whenever possible. "
"See :issue:`1381` for the details. The branch cuts for :func:`asinh`, :func:"
"`atanh`: and :func:`atan` have also been corrected."
msgstr ""
"Las revisiones también han mejorado la solidez numérica del módulo :mod:"
"`cmath`. Para todas las funciones, las partes real e imaginaria de los "
"resultados son exactas con unas pocas unidades de precisión mínima (ulps) "
"siempre que sea posible. Véase :issue:`1381` para los detalles. También se "
"han corregido los cortes de rama para :func:`asinh`, :func:`atanh`: y :func:"
"`atan`."
#: ../Doc/whatsnew/2.6.rst:1846
msgid ""
"The tests for the module have been greatly expanded; nearly 2000 new test "
"cases exercise the algebraic functions."
msgstr ""
"Las pruebas del módulo se han ampliado considerablemente; casi 2000 nuevos "
"casos de prueba ejercitan las funciones algebraicas."
#: ../Doc/whatsnew/2.6.rst:1849
msgid ""
"On IEEE 754 platforms, the :mod:`cmath` module now handles IEEE 754 special "
"values and floating-point exceptions in a manner consistent with Annex 'G' "
"of the C99 standard."
msgstr ""
"En las plataformas IEEE 754, el módulo :mod:`cmath` maneja ahora los valores "
"especiales IEEE 754 y las excepciones de punto flotante de forma consistente "
"con el Anexo 'G' del estándar C99."
#: ../Doc/whatsnew/2.6.rst:1853
msgid ""
"A new data type in the :mod:`collections` module: ``namedtuple(typename, "
"fieldnames)`` is a factory function that creates subclasses of the standard "
"tuple whose fields are accessible by name as well as index. For example::"
msgstr ""
"Un nuevo tipo de datos en el módulo :mod:`collections`: "
"``namedtuple(typename, fieldnames)`` es una función de fábrica que crea "
"subclases de la tupla estándar cuyos campos son accesibles tanto por nombre "
"como por índice. Por ejemplo::"
#: ../Doc/whatsnew/2.6.rst:1875
msgid ""
"Several places in the standard library that returned tuples have been "
"modified to return :func:`namedtuple` instances. For example, the :meth:"
"`Decimal.as_tuple` method now returns a named tuple with :attr:`sign`, :attr:"
"`digits`, and :attr:`exponent` fields."
msgstr ""
"Varios lugares de la biblioteca estándar que devolvían tuplas han sido "
"modificados para devolver instancias de :func:`namedtuple`. Por ejemplo, el "
"método :meth:`Decimal.as_tuple` ahora devuelve una tupla con nombre con los "
"campos :attr:`sign`, :attr:`digits` y :attr:`exponent`."
#: ../Doc/whatsnew/2.6.rst:1882
msgid ""
"Another change to the :mod:`collections` module is that the :class:`deque` "
"type now supports an optional *maxlen* parameter; if supplied, the deque's "
"size will be restricted to no more than *maxlen* items. Adding more items "
"to a full deque causes old items to be discarded."
msgstr ""
"Otro cambio en el módulo :mod:`collections` es que el tipo :class:`deque` "
"admite ahora un parámetro opcional *maxlen*; si se suministra, el tamaño del "
"deque estará restringido a no más de *maxlen* elementos. Si se añaden más "
"elementos a un deque lleno, se descartan los elementos antiguos."
#: ../Doc/whatsnew/2.6.rst:1903
msgid ""
"The :mod:`Cookie` module's :class:`Morsel` objects now support an :attr:"
"`httponly` attribute. In some browsers. cookies with this attribute set "
"cannot be accessed or manipulated by JavaScript code. (Contributed by Arvin "
"Schnell; :issue:`1638033`.)"
msgstr ""
"Los objetos :mod:`Cookie` del módulo :class:`Morsel` soportan ahora un "
"atributo :attr:`httponly`. En algunos navegadores, las cookies con este "
"atributo no pueden ser accedidas o manipuladas por el código JavaScript. "
"(Contribución de Arvin Schnell; :issue:`1638033`.)"
#: ../Doc/whatsnew/2.6.rst:1908
msgid ""
"A new window method in the :mod:`curses` module, :meth:`chgat`, changes the "
"display attributes for a certain number of characters on a single line. "
"(Contributed by Fabian Kreutz.)"
msgstr ""
"Un nuevo método de ventana en el módulo :mod:`curses`, :meth:`chgat`, cambia "
"los atributos de visualización para un determinado número de caracteres en "
"una sola línea. (Contribución de Fabian Kreutz)"
#: ../Doc/whatsnew/2.6.rst:1918
msgid ""
"The :class:`Textbox` class in the :mod:`curses.textpad` module now supports "
"editing in insert mode as well as overwrite mode. Insert mode is enabled by "
"supplying a true value for the *insert_mode* parameter when creating the :"
"class:`Textbox` instance."
msgstr ""
"La clase :class:`Textbox` del módulo :mod:`curses.textpad` soporta ahora la "
"edición en modo de inserción así como en modo de sobrescritura. El modo de "
"inserción se activa proporcionando un valor verdadero para el parámetro "
"*insert_mode* al crear la instancia de :class:`Textbox`."
#: ../Doc/whatsnew/2.6.rst:1923
#, python-format
msgid ""
"The :mod:`datetime` module's :meth:`strftime` methods now support a ``%f`` "
"format code that expands to the number of microseconds in the object, zero-"
"padded on the left to six places. (Contributed by Skip Montanaro; :issue:"
"`1158`.)"
msgstr ""
"Los métodos :meth:`strftime` del módulo :mod:`datetime` soportan ahora un "
"código de formato ``%f`` que se expande al número de microsegundos en el "
"objeto, rellenado de cero a la izquierda hasta seis lugares. (Contribución "
"de Skip Montanaro; :issue:`1158`.)"
#: ../Doc/whatsnew/2.6.rst:1928
msgid ""
"The :mod:`decimal` module was updated to version 1.66 of `the General "
"Decimal Specification `__. "
"New features include some methods for some basic mathematical functions such "
"as :meth:`exp` and :meth:`log10`::"
msgstr ""
"El módulo :mod:`decimal` se actualizó a la versión 1.66 de `the General "
"Decimal Specification `__. "
"Las nuevas características incluyen algunos métodos para algunas funciones "
"matemáticas básicas como :meth:`exp` y :meth:`log10`:"
#: ../Doc/whatsnew/2.6.rst:1940
msgid ""
"The :meth:`as_tuple` method of :class:`Decimal` objects now returns a named "
"tuple with :attr:`sign`, :attr:`digits`, and :attr:`exponent` fields."
msgstr ""
"El método :meth:`as_tuple` de los objetos :class:`Decimal` devuelve ahora "
"una tupla con nombre con los campos :attr:`signo`, :attr:`dígitos` y :attr:"
"`exponente`."
#: ../Doc/whatsnew/2.6.rst:1943
msgid ""
"(Implemented by Facundo Batista and Mark Dickinson. Named tuple support "
"added by Raymond Hettinger.)"
msgstr ""
"(Implementado por Facundo Batista y Mark Dickinson. Soporte de tuplas con "
"nombre añadido por Raymond Hettinger)"
#: ../Doc/whatsnew/2.6.rst:1946
msgid ""
"The :mod:`difflib` module's :class:`SequenceMatcher` class now returns named "
"tuples representing matches, with :attr:`a`, :attr:`b`, and :attr:`size` "
"attributes. (Contributed by Raymond Hettinger.)"
msgstr ""
"La clase :mod:`difflib` del módulo :class:`SequenceMatcher` devuelve ahora "
"tuplas con nombre que representan coincidencias, con atributos :attr:`a`, :"
"attr:`b` y :attr:`size`. (Contribución de Raymond Hettinger)"
#: ../Doc/whatsnew/2.6.rst:1951
msgid ""
"An optional ``timeout`` parameter, specifying a timeout measured in seconds, "
"was added to the :class:`ftplib.FTP` class constructor as well as the :meth:"
"`connect` method. (Added by Facundo Batista.) Also, the :class:`FTP` "
"class's :meth:`storbinary` and :meth:`storlines` now take an optional "
"*callback* parameter that will be called with each block of data after the "
"data has been sent. (Contributed by Phil Schwartz; :issue:`1221598`.)"
msgstr ""
"Se ha añadido un parámetro opcional ``timeout``, que especifica un tiempo de "
"espera medido en segundos, al constructor de la clase :class:`ftplib.FTP` "
"así como al método :meth:`connect`. (Añadido por Facundo Batista.) Además, "
"los métodos :meth:`storbinary` y :meth:`storlines` de la clase :class:`FTP` "
"ahora toman un parámetro opcional *callback* que será llamado con cada "
"bloque de datos después de que los datos hayan sido enviados. (Contribuido "
"por Phil Schwartz; :issue:`1221598`.)"
#: ../Doc/whatsnew/2.6.rst:1959
msgid ""
"The :func:`reduce` built-in function is also available in the :mod:"
"`functools` module. In Python 3.0, the builtin has been dropped and :func:"
"`reduce` is only available from :mod:`functools`; currently there are no "
"plans to drop the builtin in the 2.x series. (Patched by Christian Heimes; :"
"issue:`1739906`.)"
msgstr ""
"La función incorporada :func:`reduce` también está disponible en el módulo :"
"mod:`functools`. En Python 3.0, la función incorporada se ha eliminado y :"
"func:`reduce` sólo está disponible en :mod:`functools`; actualmente no hay "
"planes para eliminar la función incorporada en la serie 2.x. (Parcheado por "
"Christian Heimes; :issue:`1739906`.)"
#: ../Doc/whatsnew/2.6.rst:1965
msgid ""
"When possible, the :mod:`getpass` module will now use :file:`/dev/tty` to "
"print a prompt message and read the password, falling back to standard error "
"and standard input. If the password may be echoed to the terminal, a "
"warning is printed before the prompt is displayed. (Contributed by Gregory "
"P. Smith.)"
msgstr ""
"Cuando sea posible, el módulo :mod:`getpass` utilizará ahora :file:`/dev/"
"tty` para imprimir un mensaje de aviso y leer la contraseña, retrocediendo "
"al error estándar y a la entrada estándar. Si la contraseña puede ser "
"enviada al terminal, se imprimirá una advertencia antes de que se muestre el "
"aviso. (Contribución de Gregory P. Smith)"
#: ../Doc/whatsnew/2.6.rst:1971
msgid ""
"The :func:`glob.glob` function can now return Unicode filenames if a Unicode "
"path was used and Unicode filenames are matched within the directory. (:"
"issue:`1001604`)"
msgstr ""
"La función :func:`glob.glob` ahora puede devolver nombres de archivo Unicode "
"si se ha utilizado una ruta Unicode y se han encontrado nombres de archivo "
"Unicode dentro del directorio. (:issue:`1001604`)"
#: ../Doc/whatsnew/2.6.rst:1975
msgid ""
"A new function in the :mod:`heapq` module, ``merge(iter1, iter2, ...)``, "
"takes any number of iterables returning data in sorted order, and returns a "
"new generator that returns the contents of all the iterators, also in sorted "
"order. For example::"
msgstr ""
"Una nueva función en el módulo :mod:`heapq`, ``merge(iter1, iter2, ...)``, "
"toma cualquier número de iterables que devuelven datos en orden ordenado, y "
"devuelve un nuevo generador que devuelve el contenido de todos los "
"iteradores, también en ordenado. Por ejemplo::"
#: ../Doc/whatsnew/2.6.rst:1983
msgid ""
"Another new function, ``heappushpop(heap, item)``, pushes *item* onto "
"*heap*, then pops off and returns the smallest item. This is more efficient "
"than making a call to :func:`heappush` and then :func:`heappop`."
msgstr ""
"Otra nueva función, ``heappushpop(heap, item)``, empuja *item* a *heap*, "
"luego lo saca y devuelve el elemento más pequeño. Esto es más eficiente que "
"hacer una llamada a :func:`heappush` y luego a :func:`heappop`."
#: ../Doc/whatsnew/2.6.rst:1988
msgid ""
":mod:`heapq` is now implemented to only use less-than comparison, instead of "
"the less-than-or-equal comparison it previously used. This makes :mod:"
"`heapq`'s usage of a type match the :meth:`list.sort` method. (Contributed "
"by Raymond Hettinger.)"
msgstr ""
":mod:`heapq` se ha implementado para utilizar únicamente la comparación "
"menor que, en lugar de la comparación menor o igual que utilizaba "
"anteriormente. Esto hace que el uso de :mod:`heapq` de un tipo coincida con "
"el método :meth:`list.sort`. (Contribución de Raymond Hettinger)"
#: ../Doc/whatsnew/2.6.rst:1994
msgid ""
"An optional ``timeout`` parameter, specifying a timeout measured in seconds, "
"was added to the :class:`httplib.HTTPConnection` and :class:"
"`HTTPSConnection` class constructors. (Added by Facundo Batista.)"
msgstr ""
"Se ha añadido un parámetro opcional ``timeout``, que especifica un tiempo de "
"espera medido en segundos, a los constructores de las clases :class:`httplib."
"HTTPConnection` y :class:`HTTPSConnection`. (Añadido por Facundo Batista)"
#: ../Doc/whatsnew/2.6.rst:1999
msgid ""
"Most of the :mod:`inspect` module's functions, such as :func:`getmoduleinfo` "
"and :func:`getargs`, now return named tuples. In addition to behaving like "
"tuples, the elements of the return value can also be accessed as "
"attributes. (Contributed by Raymond Hettinger.)"
msgstr ""
"La mayoría de las funciones del módulo :mod:`inspect`, como :func:"
"`getmoduleinfo` y :func:`getargs`, ahora devuelven tuplas con nombre. Además "
"de comportarse como tuplas, también se puede acceder a los elementos del "
"valor devuelto como atributos. (Contribución de Raymond Hettinger)"
#: ../Doc/whatsnew/2.6.rst:2005
msgid ""
"Some new functions in the module include :func:`isgenerator`, :func:"
"`isgeneratorfunction`, and :func:`isabstract`."
msgstr ""
"Algunas de las nuevas funciones del módulo son :func:`isgenerator`, :func:"
"`isgeneratorfunction` y :func:`isabstract`."
#: ../Doc/whatsnew/2.6.rst:2009
msgid "The :mod:`itertools` module gained several new functions."
msgstr "El módulo :mod:`itertools` ha ganado varias funciones nuevas."
#: ../Doc/whatsnew/2.6.rst:2011
msgid ""
"``izip_longest(iter1, iter2, ...[, fillvalue])`` makes tuples from each of "
"the elements; if some of the iterables are shorter than others, the missing "
"values are set to *fillvalue*. For example::"
msgstr ""
"``izip_longest(iter1, iter2, ...[, fillvalue])`` hace tuplas de cada uno de "
"los elementos; si algunos de los iterables son más cortos que otros, los "
"valores que faltan se ponen a *fillvalue*. Por ejemplo::"
#: ../Doc/whatsnew/2.6.rst:2018
msgid ""
"``product(iter1, iter2, ..., [repeat=N])`` returns the Cartesian product of "
"the supplied iterables, a set of tuples containing every possible "
"combination of the elements returned from each iterable. ::"
msgstr ""
"``product(iter1, iter2, ..., [repeat=N])`` devuelve el producto cartesiano "
"de los iterables suministrados, un conjunto de tuplas que contiene todas las "
"combinaciones posibles de los elementos devueltos de cada iterable. ::"
#: ../Doc/whatsnew/2.6.rst:2027
msgid ""
"The optional *repeat* keyword argument is used for taking the product of an "
"iterable or a set of iterables with themselves, repeated *N* times. With a "
"single iterable argument, *N*-tuples are returned::"
msgstr ""
"El argumento opcional de la palabra clave *repeat* se utiliza para tomar el "
"producto de un iterable o un conjunto de iterables con ellos mismos, "
"repetido *N* veces. Con un único argumento iterable, se devuelven *N*-"
"tuplas::"
#: ../Doc/whatsnew/2.6.rst:2036
msgid "With two iterables, *2N*-tuples are returned. ::"
msgstr "Con dos iterables, se devuelven *2N*-tuplas. ::"
#: ../Doc/whatsnew/2.6.rst:2044
msgid ""
"``combinations(iterable, r)`` returns sub-sequences of length *r* from the "
"elements of *iterable*. ::"
msgstr ""
"``combinaciones(iterable, r)`` devuelve subsecuencias de longitud *r* de los "
"elementos de *iterable*. ::"
#: ../Doc/whatsnew/2.6.rst:2055
msgid ""
"``permutations(iter[, r])`` returns all the permutations of length *r* of "
"the iterable's elements. If *r* is not specified, it will default to the "
"number of elements produced by the iterable. ::"
msgstr ""
"``permutaciones(iter[, r])`` devuelve todas las permutaciones de longitud "
"*r* de los elementos del iterable. Si no se especifica *r*, por defecto "
"será el número de elementos producidos por el iterable. ::"
#: ../Doc/whatsnew/2.6.rst:2065
msgid ""
"``itertools.chain(*iterables)`` is an existing function in :mod:`itertools` "
"that gained a new constructor in Python 2.6. ``itertools.chain."
"from_iterable(iterable)`` takes a single iterable that should return other "
"iterables. :func:`chain` will then return all the elements of the first "
"iterable, then all the elements of the second, and so on. ::"
msgstr ""
"``itertools.chain(*iterables)`` es una función existente en :mod:`itertools` "
"que obtuvo un nuevo constructor en Python 2.6. ``itertools.chain."
"from_iterable(iterable)`` toma un único iterable que debe devolver otros "
"iterables. :func:`chain` devolverá entonces todos los elementos del primer "
"iterable, luego todos los elementos del segundo, y así sucesivamente. ::"
#: ../Doc/whatsnew/2.6.rst:2075
msgid "(All contributed by Raymond Hettinger.)"
msgstr "(Todo ello aportado por Raymond Hettinger)"
#: ../Doc/whatsnew/2.6.rst:2077
msgid ""
"The :mod:`logging` module's :class:`FileHandler` class and its subclasses :"
"class:`WatchedFileHandler`, :class:`RotatingFileHandler`, and :class:"
"`TimedRotatingFileHandler` now have an optional *delay* parameter to their "
"constructors. If *delay* is true, opening of the log file is deferred until "
"the first :meth:`emit` call is made. (Contributed by Vinay Sajip.)"
msgstr ""
"La clase :mod:`logging` del módulo :class:`FileHandler` y sus subclases :"
"class:`WatchedFileHandler`, :class:`RotatingFileHandler` y :class:"
"`TimedRotatingFileHandler` tienen ahora un parámetro opcional *delay* en sus "
"constructores. Si *retraso* es verdadero, la apertura del fichero de "
"registro se retrasa hasta que se realice la primera llamada :meth:`emit`. "
"(Contribuido por Vinay Sajip.)"
#: ../Doc/whatsnew/2.6.rst:2084
msgid ""
":class:`TimedRotatingFileHandler` also has a *utc* constructor parameter. "
"If the argument is true, UTC time will be used in determining when midnight "
"occurs and in generating filenames; otherwise local time will be used."
msgstr ""
":class:`TimedRotatingFileHandler` también tiene un parámetro constructor "
"*utc*. Si el argumento es verdadero, se utilizará la hora UTC para "
"determinar cuándo ocurre la medianoche y para generar los nombres de los "
"archivos; en caso contrario, se utilizará la hora local."
#: ../Doc/whatsnew/2.6.rst:2089
msgid "Several new functions were added to the :mod:`math` module:"
msgstr "Se han añadido varias funciones nuevas al módulo :mod:`math`:"
#: ../Doc/whatsnew/2.6.rst:2091
msgid ""
":func:`~math.isinf` and :func:`~math.isnan` determine whether a given float "
"is a (positive or negative) infinity or a NaN (Not a Number), respectively."
msgstr ""
":func:`~math.isinf` y :func:`~math.isnan` determinan si un flotador dado es "
"un infinito (positivo o negativo) o un NaN (Not a Number), respectivamente."
#: ../Doc/whatsnew/2.6.rst:2094
msgid ""
":func:`~math.copysign` copies the sign bit of an IEEE 754 number, returning "
"the absolute value of *x* combined with the sign bit of *y*. For example, "
"``math.copysign(1, -0.0)`` returns -1.0. (Contributed by Christian Heimes.)"
msgstr ""
":func:`~math.copysign` copia el bit de signo de un número IEEE 754, "
"devolviendo el valor absoluto de *x* combinado con el bit de signo de *y*. "
"Por ejemplo, ``math.copysign(1, -0.0)`` devuelve -1.0. (Contribución de "
"Christian Heimes)"
#: ../Doc/whatsnew/2.6.rst:2099
msgid ""
":func:`~math.factorial` computes the factorial of a number. (Contributed by "
"Raymond Hettinger; :issue:`2138`.)"
msgstr ""
":func:`~math.factorial` calcula el factorial de un número. (Contribuido por "
"Raymond Hettinger; :issue:`2138`.)"
#: ../Doc/whatsnew/2.6.rst:2102
msgid ""
":func:`~math.fsum` adds up the stream of numbers from an iterable, and is "
"careful to avoid loss of precision through using partial sums. (Contributed "
"by Jean Brouwers, Raymond Hettinger, and Mark Dickinson; :issue:`2819`.)"
msgstr ""
":func:`~math.fsum` suma el flujo de números de un iterable, y tiene cuidado "
"de evitar la pérdida de precisión mediante el uso de sumas parciales. "
"(Contribución de Jean Brouwers, Raymond Hettinger y Mark Dickinson; :issue:"
"`2819`)"
#: ../Doc/whatsnew/2.6.rst:2107
msgid ""
":func:`~math.acosh`, :func:`~math.asinh` and :func:`~math.atanh` compute the "
"inverse hyperbolic functions."
msgstr ""
":func:`~math.acosh`, :func:`~math.asinh` y :func:`~math.atanh` calculan las "
"funciones hiperbólicas inversas."
#: ../Doc/whatsnew/2.6.rst:2110
msgid ":func:`~math.log1p` returns the natural logarithm of *1+x* (base *e*)."
msgstr ":func:`~math.log1p` devuelve el logaritmo natural de *1+x* (base *e*)."
#: ../Doc/whatsnew/2.6.rst:2113
msgid ""
":func:`trunc` rounds a number toward zero, returning the closest :class:"
"`Integral` that's between the function's argument and zero. Added as part of "
"the backport of `PEP 3141's type hierarchy for numbers <#pep-3141>`__."
msgstr ""
":func:`trunc` redondea un número hacia cero, devolviendo el :class:"
"`Integral` más cercano que esté entre el argumento de la función y el cero. "
"Añadido como parte del backport de la jerarquía de tipos de números de `PEP "
"3141 <#pep-3141>`__."
#: ../Doc/whatsnew/2.6.rst:2118
msgid ""
"The :mod:`math` module has been improved to give more consistent behaviour "
"across platforms, especially with respect to handling of floating-point "
"exceptions and IEEE 754 special values."
msgstr ""
"El módulo :mod:`math` se ha mejorado para ofrecer un comportamiento más "
"coherente en todas las plataformas, especialmente en lo que respecta al "
"manejo de las excepciones de punto flotante y los valores especiales IEEE "
"754."
#: ../Doc/whatsnew/2.6.rst:2122
msgid ""
"Whenever possible, the module follows the recommendations of the C99 "
"standard about 754's special values. For example, ``sqrt(-1.)`` should now "
"give a :exc:`ValueError` across almost all platforms, while "
"``sqrt(float('NaN'))`` should return a NaN on all IEEE 754 platforms. Where "
"Annex 'F' of the C99 standard recommends signaling 'divide-by-zero' or "
"'invalid', Python will raise :exc:`ValueError`. Where Annex 'F' of the C99 "
"standard recommends signaling 'overflow', Python will raise :exc:"
"`OverflowError`. (See :issue:`711019` and :issue:`1640`.)"
msgstr ""
"Siempre que es posible, el módulo sigue las recomendaciones del estándar C99 "
"sobre los valores especiales de 754. Por ejemplo, ``sqrt(-1.)`` debería dar "
"ahora un :exc:`ValueError` en casi todas las plataformas, mientras que "
"``sqrt(float('NaN'))`` debería devolver un NaN en todas las plataformas IEEE "
"754. Cuando el Anexo 'F' del estándar C99 recomiende señalar 'dividir por "
"cero' o 'inválido', Python lanzará :exc:`ValueError`. Cuando el Anexo 'F' "
"del estándar C99 recomiende señalar 'desbordamiento', Python lanzará :exc:"
"`OverflowError`. (Ver :issue:`711019` y :issue:`1640`)"
#: ../Doc/whatsnew/2.6.rst:2132
msgid "(Contributed by Christian Heimes and Mark Dickinson.)"
msgstr "(Contribución de Christian Heimes y Mark Dickinson)"
#: ../Doc/whatsnew/2.6.rst:2134
msgid ""
":class:`~mmap.mmap` objects now have a :meth:`rfind` method that searches "
"for a substring beginning at the end of the string and searching backwards. "
"The :meth:`find` method also gained an *end* parameter giving an index at "
"which to stop searching. (Contributed by John Lenton.)"
msgstr ""
"Los objetos :class:`~mmap.mmap` tienen ahora un método :meth:`rfind` que "
"busca una subcadena empezando por el final de la cadena y buscando hacia "
"atrás. El método :meth:`find` también ha ganado un parámetro *end* que da "
"un índice en el que parar la búsqueda. (Contribución de John Lenton)"
#: ../Doc/whatsnew/2.6.rst:2140
msgid ""
"The :mod:`operator` module gained a :func:`methodcaller` function that takes "
"a name and an optional set of arguments, returning a callable that will call "
"the named function on any arguments passed to it. For example::"
msgstr ""
"El módulo :mod:`operator` ganó una función :func:`methodcaller` que toma un "
"nombre y un conjunto opcional de argumentos, devolviendo un callable que "
"llamará a la función nombrada en cualquier argumento que se le pase. Por "
"ejemplo::"
#: ../Doc/whatsnew/2.6.rst:2150
msgid "(Contributed by Georg Brandl, after a suggestion by Gregory Petrosyan.)"
msgstr ""
"(Contribución de Georg Brandl, tras una sugerencia de Gregory Petrosyan)"
#: ../Doc/whatsnew/2.6.rst:2152
msgid ""
"The :func:`attrgetter` function now accepts dotted names and performs the "
"corresponding attribute lookups::"
msgstr ""
"La función :func:`attrgetter` acepta ahora nombres con puntos y realiza las "
"correspondientes búsquedas de atributos::"
#: ../Doc/whatsnew/2.6.rst:2162
msgid "(Contributed by Georg Brandl, after a suggestion by Barry Warsaw.)"
msgstr "(Contribución de Georg Brandl, tras una sugerencia de Barry Warsaw)"
#: ../Doc/whatsnew/2.6.rst:2164
msgid ""
"The :mod:`os` module now wraps several new system calls. ``fchmod(fd, "
"mode)`` and ``fchown(fd, uid, gid)`` change the mode and ownership of an "
"opened file, and ``lchmod(path, mode)`` changes the mode of a symlink. "
"(Contributed by Georg Brandl and Christian Heimes.)"
msgstr ""
"El módulo :mod:`os` incluye ahora varias llamadas nuevas al sistema. "
"``fchmod(fd, mode)`` y ``fchown(fd, uid, gid)`` cambian el modo y la "
"propiedad de un fichero abierto, y ``lchmod(path, mode)`` cambia el modo de "
"un enlace simbólico. (Contribución de Georg Brandl y Christian Heimes)"
#: ../Doc/whatsnew/2.6.rst:2170
msgid ""
":func:`chflags` and :func:`lchflags` are wrappers for the corresponding "
"system calls (where they're available), changing the flags set on a file. "
"Constants for the flag values are defined in the :mod:`stat` module; some "
"possible values include :const:`UF_IMMUTABLE` to signal the file may not be "
"changed and :const:`UF_APPEND` to indicate that data can only be appended to "
"the file. (Contributed by M. Levinson.)"
msgstr ""
":func:`chflags` y :func:`lchflags` son envoltorios para las correspondientes "
"llamadas al sistema (cuando están disponibles), que cambian las banderas "
"establecidas en un archivo. Las constantes para los valores de las banderas "
"se definen en el módulo :mod:`stat`; algunos valores posibles son :const:"
"`UF_IMMUTABLE` para indicar que el fichero no puede ser modificado y :const:"
"`UF_APPEND` para indicar que sólo se pueden añadir datos al fichero. "
"(Contribución de M. Levinson)"
#: ../Doc/whatsnew/2.6.rst:2178
msgid ""
"``os.closerange(low, high)`` efficiently closes all file descriptors from "
"*low* to *high*, ignoring any errors and not including *high* itself. This "
"function is now used by the :mod:`subprocess` module to make starting "
"processes faster. (Contributed by Georg Brandl; :issue:`1663329`.)"
msgstr ""
"``os.closerange(low, high)`` cierra eficazmente todos los descriptores de "
"fichero desde *low* hasta *high*, ignorando cualquier error y sin incluir a "
"*high* mismo. Esta función es ahora utilizada por el módulo :mod:"
"`subprocess` para hacer más rápido el arranque de procesos. (Contribuido "
"por Georg Brandl; :issue:`1663329`.)"
#: ../Doc/whatsnew/2.6.rst:2183
msgid ""
"The ``os.environ`` object's :meth:`clear` method will now unset the "
"environment variables using :func:`os.unsetenv` in addition to clearing the "
"object's keys. (Contributed by Martin Horcicka; :issue:`1181`.)"
msgstr ""
"El método :meth:`clear` del objeto ``os.environ`` ahora desajustará las "
"variables de entorno utilizando :func:`os.unsetenv` además de borrar las "
"claves del objeto. (Contribuido por Martin Horcicka; :issue:`1181`.)"
#: ../Doc/whatsnew/2.6.rst:2187
msgid ""
"The :func:`os.walk` function now has a ``followlinks`` parameter. If set to "
"True, it will follow symlinks pointing to directories and visit the "
"directory's contents. For backward compatibility, the parameter's default "
"value is false. Note that the function can fall into an infinite recursion "
"if there's a symlink that points to a parent directory. (:issue:`1273829`)"
msgstr ""
"La función :func:`os.walk` tiene ahora un parámetro ``followlinks``. Si se "
"establece como True, seguirá los enlaces simbólicos que apunten a "
"directorios y visitará el contenido del directorio. Por compatibilidad con "
"el pasado, el valor por defecto del parámetro es false. Tenga en cuenta que "
"la función puede caer en una recursión infinita si hay un enlace simbólico "
"que apunte a un directorio padre. (:issue:`1273829`)"
#: ../Doc/whatsnew/2.6.rst:2194
msgid ""
"In the :mod:`os.path` module, the :func:`splitext` function has been changed "
"to not split on leading period characters. This produces better results when "
"operating on Unix's dot-files. For example, ``os.path.splitext('.ipython')`` "
"now returns ``('.ipython', '')`` instead of ``('', '.ipython')``. (:issue:"
"`1115886`)"
msgstr ""
"En el módulo :mod:`os.path`, la función :func:`splitext` ha sido modificada "
"para no dividir los caracteres de punto inicial. Esto produce mejores "
"resultados cuando se opera con archivos de puntos de Unix. Por ejemplo, ``os."
"path.splitext('.ipython')`` ahora devuelve ``('.ipython', '')`` en lugar de "
"``('', '.ipython')``. (:issue:`1115886`)"
#: ../Doc/whatsnew/2.6.rst:2201
msgid ""
"A new function, ``os.path.relpath(path, start='.')``, returns a relative "
"path from the ``start`` path, if it's supplied, or from the current working "
"directory to the destination ``path``. (Contributed by Richard Barran; :"
"issue:`1339796`.)"
msgstr ""
"Una nueva función, ``os.path.relpath(path, start='.')``, devuelve una ruta "
"relativa desde la ruta ``start``, si se suministra, o desde el directorio de "
"trabajo actual hasta el destino ``path``. (Contribución de Richard Barran; :"
"issue:`1339796`.)"
#: ../Doc/whatsnew/2.6.rst:2206
msgid ""
"On Windows, :func:`os.path.expandvars` will now expand environment variables "
"given in the form \"%var%\", and \"~user\" will be expanded into the user's "
"home directory path. (Contributed by Josiah Carlson; :issue:`957650`.)"
msgstr ""
"En Windows, :func:`os.path.expandvars` ahora expandirá las variables de "
"entorno dadas en la forma \"%var%\", y \"~user\" se expandirá en la ruta del "
"directorio personal del usuario. (Contribución de Josiah Carlson; :issue:"
"`957650`.)"
#: ../Doc/whatsnew/2.6.rst:2211
msgid ""
"The Python debugger provided by the :mod:`pdb` module gained a new command: "
"\"run\" restarts the Python program being debugged and can optionally take "
"new command-line arguments for the program. (Contributed by Rocky "
"Bernstein; :issue:`1393667`.)"
msgstr ""
"El depurador de Python proporcionado por el módulo :mod:`pdb` ganó un nuevo "
"comando: \"run\" reinicia el programa Python que se está depurando y puede "
"tomar opcionalmente nuevos argumentos de línea de comandos para el programa. "
"(Contribución de Rocky Bernstein; :issue:`1393667`.)"
#: ../Doc/whatsnew/2.6.rst:2216
msgid ""
"The :func:`pdb.post_mortem` function, used to begin debugging a traceback, "
"will now use the traceback returned by :func:`sys.exc_info` if no traceback "
"is supplied. (Contributed by Facundo Batista; :issue:`1106316`.)"
msgstr ""
"La función :func:`pdb.post_mortem`, utilizada para iniciar la depuración de "
"un traceback, utilizará ahora el traceback devuelto por :func:`sys.exc_info` "
"si no se suministra ningún traceback. (Contribuido por Facundo Batista; :"
"issue:`1106316`.)"
#: ../Doc/whatsnew/2.6.rst:2221
msgid ""
"The :mod:`pickletools` module now has an :func:`optimize` function that "
"takes a string containing a pickle and removes some unused opcodes, "
"returning a shorter pickle that contains the same data structure. "
"(Contributed by Raymond Hettinger.)"
msgstr ""
"El módulo :mod:`pickletools` tiene ahora una función :func:`optimize` que "
"toma una cadena que contiene un pickle y elimina algunos opcodes no "
"utilizados, devolviendo un pickle más corto que contiene la misma estructura "
"de datos. (Contribución de Raymond Hettinger)"
#: ../Doc/whatsnew/2.6.rst:2226
msgid ""
"A :func:`get_data` function was added to the :mod:`pkgutil` module that "
"returns the contents of resource files included with an installed Python "
"package. For example::"
msgstr ""
"Se ha añadido una función :func:`get_data` al módulo :mod:`pkgutil` que "
"devuelve el contenido de los archivos de recursos incluidos con un paquete "
"Python instalado. Por ejemplo::"
#: ../Doc/whatsnew/2.6.rst:2241
msgid "(Contributed by Paul Moore; :issue:`2439`.)"
msgstr "(Contribución de Paul Moore; :issue:`2439`.)"
#: ../Doc/whatsnew/2.6.rst:2243
msgid ""
"The :mod:`pyexpat` module's :class:`Parser` objects now allow setting their :"
"attr:`buffer_size` attribute to change the size of the buffer used to hold "
"character data. (Contributed by Achim Gaedke; :issue:`1137`.)"
msgstr ""
"Los objetos :mod:`pyexpat` del módulo :class:`Parser` permiten ahora "
"establecer su atributo :attr:`buffer_size` para cambiar el tamaño del buffer "
"utilizado para mantener los datos de caracteres. (Contribución de Achim "
"Gaedke; :issue:`1137`.)"
#: ../Doc/whatsnew/2.6.rst:2248
msgid ""
"The :mod:`Queue` module now provides queue variants that retrieve entries in "
"different orders. The :class:`PriorityQueue` class stores queued items in a "
"heap and retrieves them in priority order, and :class:`LifoQueue` retrieves "
"the most recently added entries first, meaning that it behaves like a stack. "
"(Contributed by Raymond Hettinger.)"
msgstr ""
"El módulo :mod:`Queue` proporciona ahora variantes de colas que recuperan "
"las entradas en diferentes órdenes. La clase :class:`PriorityQueue` "
"almacena los elementos en cola en un montón y los recupera en orden de "
"prioridad, y :class:`LifoQueue` recupera primero las entradas añadidas más "
"recientemente, lo que significa que se comporta como una pila. (Contribución "
"de Raymond Hettinger)"
#: ../Doc/whatsnew/2.6.rst:2255
msgid ""
"The :mod:`random` module's :class:`Random` objects can now be pickled on a "
"32-bit system and unpickled on a 64-bit system, and vice versa. "
"Unfortunately, this change also means that Python 2.6's :class:`Random` "
"objects can't be unpickled correctly on earlier versions of Python. "
"(Contributed by Shawn Ligocki; :issue:`1727780`.)"
msgstr ""
"Los objetos :class:`Random` del módulo :mod:`random` ahora pueden ser "
"decapados en un sistema de 32 bits y desempaquetados en un sistema de 64 "
"bits, y viceversa. Desafortunadamente, este cambio también significa que "
"los objetos :class:`Random` de Python 2.6 no pueden ser desempaquetados "
"correctamente en versiones anteriores de Python. (Contribuido por Shawn "
"Ligocki; :issue:`1727780`.)"
#: ../Doc/whatsnew/2.6.rst:2262
msgid ""
"The new ``triangular(low, high, mode)`` function returns random numbers "
"following a triangular distribution. The returned values are between *low* "
"and *high*, not including *high* itself, and with *mode* as the most "
"frequently occurring value in the distribution. (Contributed by Wladmir van "
"der Laan and Raymond Hettinger; :issue:`1681432`.)"
msgstr ""
"La nueva función ``triangular(low, high, mode)`` devuelve números aleatorios "
"siguiendo una distribución triangular. Los valores devueltos están entre "
"*bajos* y *altos*, sin incluir los propios *altos*, y con *modo* como valor "
"más frecuente en la distribución. (Contribución de Wladmir van der Laan y "
"Raymond Hettinger; :issue:`1681432`.)"
#: ../Doc/whatsnew/2.6.rst:2269
msgid ""
"Long regular expression searches carried out by the :mod:`re` module will "
"check for signals being delivered, so time-consuming searches can now be "
"interrupted. (Contributed by Josh Hoyt and Ralf Schmitt; :issue:`846388`.)"
msgstr ""
"Las búsquedas de expresiones regulares largas llevadas a cabo por el módulo :"
"mod:`re` comprobarán la entrega de señales, por lo que ahora se pueden "
"interrumpir las búsquedas que consumen mucho tiempo. (Contribución de Josh "
"Hoyt y Ralf Schmitt; :issue:`846388`.)"
#: ../Doc/whatsnew/2.6.rst:2274
msgid ""
"The regular expression module is implemented by compiling bytecodes for a "
"tiny regex-specific virtual machine. Untrusted code could create malicious "
"strings of bytecode directly and cause crashes, so Python 2.6 includes a "
"verifier for the regex bytecode. (Contributed by Guido van Rossum from work "
"for Google App Engine; :issue:`3487`.)"
msgstr ""
"El módulo de expresiones regulares se implementa compilando bytecodes para "
"una pequeña máquina virtual específica de regex. El código no fiable podría "
"crear cadenas maliciosas de código de bytes directamente y causar caídas, "
"por lo que Python 2.6 incluye un verificador para el código de bytes regex. "
"(Contribuido por Guido van Rossum del trabajo para Google App Engine; :issue:"
"`3487`.)"
#: ../Doc/whatsnew/2.6.rst:2281
msgid ""
"The :mod:`rlcompleter` module's :meth:`Completer.complete()` method will now "
"ignore exceptions triggered while evaluating a name. (Fixed by Lorenz "
"Quack; :issue:`2250`.)"
msgstr ""
"El método :meth:`Completer.complete()` del módulo :mod:`rlcompleter` ahora "
"ignorará las excepciones que se produzcan al evaluar un nombre. (Corregido "
"por Lorenz Quack; :issue:`2250`.)"
#: ../Doc/whatsnew/2.6.rst:2285
msgid ""
"The :mod:`sched` module's :class:`scheduler` instances now have a read-only :"
"attr:`queue` attribute that returns the contents of the scheduler's queue, "
"represented as a list of named tuples with the fields ``(time, priority, "
"action, argument)``. (Contributed by Raymond Hettinger; :issue:`1861`.)"
msgstr ""
"Las instancias :mod:`sched` del módulo :class:`scheduler` tienen ahora un "
"atributo :attr:`queue` de sólo lectura que devuelve el contenido de la cola "
"del planificador, representado como una lista de tuplas con nombre con los "
"campos ``(tiempo, prioridad, acción, argumento)``. (Contribución de Raymond "
"Hettinger; :issue:`1861`.)"
#: ../Doc/whatsnew/2.6.rst:2291
msgid ""
"The :mod:`select` module now has wrapper functions for the Linux :c:func:`!"
"epoll` and BSD :c:func:`!kqueue` system calls. :meth:`modify` method was "
"added to the existing :class:`poll` objects; ``pollobj.modify(fd, "
"eventmask)`` takes a file descriptor or file object and an event mask, "
"modifying the recorded event mask for that file. (Contributed by Christian "
"Heimes; :issue:`1657`.)"
msgstr ""
"El módulo :mod:`select` tiene ahora funciones de envoltura para las llamadas "
"al sistema Linux :c:func:`!epoll` y BSD :c:func:`!kqueue`. Se ha añadido el "
"método :meth:`modify` a los objetos :class:`poll` existentes; ``pollobj."
"modify(fd, eventmask)`` toma un descriptor de fichero o un objeto de fichero "
"y una máscara de evento, modificando la máscara de evento registrada para "
"ese fichero. (Contribución de Christian Heimes; :issue:`1657`.)"
#: ../Doc/whatsnew/2.6.rst:2299
msgid ""
"The :func:`shutil.copytree` function now has an optional *ignore* argument "
"that takes a callable object. This callable will receive each directory "
"path and a list of the directory's contents, and returns a list of names "
"that will be ignored, not copied."
msgstr ""
"La función :func:`shutil.copytree` tiene ahora un argumento opcional "
"*ignore* que toma un objeto callable. Esta llamada recibirá cada ruta de "
"directorio y una lista del contenido del directorio, y devuelve una lista de "
"nombres que serán ignorados, no copiados."
#: ../Doc/whatsnew/2.6.rst:2304
msgid ""
"The :mod:`shutil` module also provides an :func:`ignore_patterns` function "
"for use with this new parameter. :func:`ignore_patterns` takes an arbitrary "
"number of glob-style patterns and returns a callable that will ignore any "
"files and directories that match any of these patterns. The following "
"example copies a directory tree, but skips both :file:`.svn` directories and "
"Emacs backup files, which have names ending with '~'::"
msgstr ""
"El módulo :mod:`shutil` también proporciona una función :func:"
"`ignore_patterns` para su uso con este nuevo parámetro. :func:"
"`ignore_patterns` toma un número arbitrario de patrones de estilo glob y "
"devuelve una llamada que ignorará cualquier archivo o directorio que "
"coincida con cualquiera de estos patrones. El siguiente ejemplo copia un "
"árbol de directorios, pero omite los directorios :file:`.svn` y los ficheros "
"de copia de seguridad de Emacs, que tienen nombres que terminan en '~'::"
#: ../Doc/whatsnew/2.6.rst:2315
msgid "(Contributed by Tarek Ziadé; :issue:`2663`.)"
msgstr "(Contribución de Tarek Ziadé; :issue:`2663`.)"
#: ../Doc/whatsnew/2.6.rst:2317
msgid ""
"Integrating signal handling with GUI handling event loops like those used by "
"Tkinter or GTk+ has long been a problem; most software ends up polling, "
"waking up every fraction of a second to check if any GUI events have "
"occurred. The :mod:`signal` module can now make this more efficient. Calling "
"``signal.set_wakeup_fd(fd)`` sets a file descriptor to be used; when a "
"signal is received, a byte is written to that file descriptor. There's also "
"a C-level function, :c:func:`PySignal_SetWakeupFd`, for setting the "
"descriptor."
msgstr ""
"Integrar el manejo de señales con los bucles de eventos de manejo de la "
"interfaz gráfica de usuario (GUI), como los utilizados por Tkinter o GTk+, "
"ha sido durante mucho tiempo un problema; la mayoría del software acaba "
"sondeando, despertando cada fracción de segundo para comprobar si se ha "
"producido algún evento de la GUI. El módulo :mod:`signal` puede ahora hacer "
"esto más eficiente. Llamando a ``signal.set_wakeup_fd(fd)`` se establece un "
"descriptor de fichero a utilizar; cuando se recibe una señal, se escribe un "
"byte en ese descriptor de fichero. También hay una función en C, :c:func:"
"`PySignal_SetWakeupFd`, para establecer el descriptor."
#: ../Doc/whatsnew/2.6.rst:2327
msgid ""
"Event loops will use this by opening a pipe to create two descriptors, one "
"for reading and one for writing. The writable descriptor will be passed to :"
"func:`set_wakeup_fd`, and the readable descriptor will be added to the list "
"of descriptors monitored by the event loop via :c:func:`!select` or :c:func:"
"`!poll`. On receiving a signal, a byte will be written and the main event "
"loop will be woken up, avoiding the need to poll."
msgstr ""
"Los bucles de eventos utilizarán esto abriendo una tubería para crear dos "
"descriptores, uno de lectura y otro de escritura. El descriptor de "
"escritura se pasará a :func:`set_wakeup_fd`, y el descriptor de lectura se "
"añadirá a la lista de descriptores monitorizados por el bucle de eventos "
"mediante :c:func:`!select` o :c:func:`!poll`. Al recibir una señal, se "
"escribirá un byte y se despertará el bucle de eventos principal, evitando la "
"necesidad de hacer un sondeo."
#: ../Doc/whatsnew/2.6.rst:2335
msgid "(Contributed by Adam Olsen; :issue:`1583`.)"
msgstr "(Contribución de Adam Olsen; :issue:`1583`.)"
#: ../Doc/whatsnew/2.6.rst:2337
msgid ""
"The :func:`siginterrupt` function is now available from Python code, and "
"allows changing whether signals can interrupt system calls or not. "
"(Contributed by Ralf Schmitt.)"
msgstr ""
"La función :func:`siginterrupt` está ahora disponible desde el código "
"Python, y permite cambiar si las señales pueden interrumpir las llamadas al "
"sistema o no. (Contribución de Ralf Schmitt)"
#: ../Doc/whatsnew/2.6.rst:2341
msgid ""
"The :func:`setitimer` and :func:`getitimer` functions have also been added "
"(where they're available). :func:`setitimer` allows setting interval timers "
"that will cause a signal to be delivered to the process after a specified "
"time, measured in wall-clock time, consumed process time, or combined "
"process+system time. (Contributed by Guilherme Polo; :issue:`2240`.)"
msgstr ""
"También se han añadido las funciones :func:`setitimer` y :func:`getitimer` "
"(cuando están disponibles). :func:`setitimer` permite establecer "
"temporizadores de intervalo que harán que se entregue una señal al proceso "
"después de un tiempo especificado, medido en tiempo de reloj de pared, "
"tiempo de proceso consumido, o tiempo combinado de proceso+sistema. "
"(Contribuido por Guilherme Polo; :issue:`2240`.)"
#: ../Doc/whatsnew/2.6.rst:2348
msgid ""
"The :mod:`smtplib` module now supports SMTP over SSL thanks to the addition "
"of the :class:`SMTP_SSL` class. This class supports an interface identical "
"to the existing :class:`SMTP` class. (Contributed by Monty Taylor.) Both "
"class constructors also have an optional ``timeout`` parameter that "
"specifies a timeout for the initial connection attempt, measured in "
"seconds. (Contributed by Facundo Batista.)"
msgstr ""
"El módulo :mod:`smtplib` ahora soporta SMTP sobre SSL gracias a la adición "
"de la clase :class:`SMTP_SSL`. Esta clase soporta una interfaz idéntica a la "
"clase :class:`SMTP` existente. (Contribuido por Monty Taylor.) Ambos "
"constructores de la clase también tienen un parámetro opcional ``timeout`` "
"que especifica un tiempo de espera para el intento de conexión inicial, "
"medido en segundos. (Contribuido por Facundo Batista.)"
#: ../Doc/whatsnew/2.6.rst:2356
msgid ""
"An implementation of the LMTP protocol (:rfc:`2033`) was also added to the "
"module. LMTP is used in place of SMTP when transferring e-mail between "
"agents that don't manage a mail queue. (LMTP implemented by Leif Hedstrom; :"
"issue:`957003`.)"
msgstr ""
"También se ha añadido al módulo una implementación del protocolo LMTP (:rfc:"
"`2033`). LMTP se utiliza en lugar de SMTP cuando se transfiere correo "
"electrónico entre agentes que no gestionan una cola de correo. (LMTP "
"implementado por Leif Hedstrom; :issue:`957003`.)"
#: ../Doc/whatsnew/2.6.rst:2361
msgid ""
":meth:`SMTP.starttls` now complies with :rfc:`3207` and forgets any "
"knowledge obtained from the server not obtained from the TLS negotiation "
"itself. (Patch contributed by Bill Fenner; :issue:`829951`.)"
msgstr ""
":meth:`SMTP.starttls` ahora cumple con :rfc:`3207` y olvida cualquier "
"conocimiento obtenido del servidor que no se haya obtenido de la propia "
"negociación TLS. (Parche aportado por Bill Fenner; :issue:`829951`.)"
#: ../Doc/whatsnew/2.6.rst:2366
msgid ""
"The :mod:`socket` module now supports TIPC (https://tipc.sourceforge.net/), "
"a high-performance non-IP-based protocol designed for use in clustered "
"environments. TIPC addresses are 4- or 5-tuples. (Contributed by Alberto "
"Bertogli; :issue:`1646`.)"
msgstr ""
"El módulo :mod:`socket` soporta ahora TIPC (http://tipc.sourceforge.net/), "
"un protocolo de alto rendimiento no basado en IP y diseñado para su uso en "
"entornos agrupados. Las direcciones TIPC son de 4 o 5 tuplas. (Contribución "
"de Alberto Bertogli; :issue:`1646`.)"
#: ../Doc/whatsnew/2.6.rst:2371
msgid ""
"A new function, :func:`create_connection`, takes an address and connects to "
"it using an optional timeout value, returning the connected socket object. "
"This function also looks up the address's type and connects to it using IPv4 "
"or IPv6 as appropriate. Changing your code to use :func:`create_connection` "
"instead of ``socket(socket.AF_INET, ...)`` may be all that's required to "
"make your code work with IPv6."
msgstr ""
"Una nueva función, :func:`create_connection`, toma una dirección y se "
"conecta a ella utilizando un valor opcional de tiempo de espera, devolviendo "
"el objeto socket conectado. Esta función también busca el tipo de dirección "
"y se conecta a ella usando IPv4 o IPv6 según sea el caso. Cambiar su código "
"para usar :func:`create_connection` en lugar de ``socket(socket."
"AF_INET, ...)`` puede ser todo lo que se necesita para que su código "
"funcione con IPv6."
#: ../Doc/whatsnew/2.6.rst:2379
msgid ""
"The base classes in the :mod:`SocketServer` module now support calling a :"
"meth:`handle_timeout` method after a span of inactivity specified by the "
"server's :attr:`timeout` attribute. (Contributed by Michael Pomraning.) "
"The :meth:`serve_forever` method now takes an optional poll interval "
"measured in seconds, controlling how often the server will check for a "
"shutdown request. (Contributed by Pedro Werneck and Jeffrey Yasskin; :issue:"
"`742598`, :issue:`1193577`.)"
msgstr ""
"Las clases base del módulo :mod:`SocketServer` ahora soportan la llamada a "
"un método :meth:`handle_timeout` después de un periodo de inactividad "
"especificado por el atributo :attr:`timeout` del servidor. (Contribuido por "
"Michael Pomraning.) El método :meth:`serve_forever` ahora toma un intervalo "
"de sondeo opcional medido en segundos, controlando la frecuencia con la que "
"el servidor comprobará si hay una solicitud de cierre. (Contribuido por "
"Pedro Werneck y Jeffrey Yasskin; :issue:`742598`, :issue:`1193577`.)"
#: ../Doc/whatsnew/2.6.rst:2388
msgid ""
"The :mod:`sqlite3` module, maintained by Gerhard Häring, has been updated "
"from version 2.3.2 in Python 2.5 to version 2.4.1."
msgstr ""
"El módulo :mod:`sqlite3`, mantenido por Gerhard Häring, ha sido actualizado "
"de la versión 2.3.2 en Python 2.5 a la versión 2.4.1."
#: ../Doc/whatsnew/2.6.rst:2392
msgid ""
"The :mod:`struct` module now supports the C99 :c:expr:`_Bool` type, using "
"the format character ``'?'``. (Contributed by David Remahl.)"
msgstr ""
"El módulo :mod:`struct` ahora admite el tipo C99 :c:expr:`_Bool`, utilizando "
"el carácter de formato ``'?'``. (Aportado por David Remahl.)"
#: ../Doc/whatsnew/2.6.rst:2396
msgid ""
"The :class:`Popen` objects provided by the :mod:`subprocess` module now "
"have :meth:`terminate`, :meth:`kill`, and :meth:`send_signal` methods. On "
"Windows, :meth:`send_signal` only supports the :const:`SIGTERM` signal, and "
"all these methods are aliases for the Win32 API function :c:func:"
"`TerminateProcess`. (Contributed by Christian Heimes.)"
msgstr ""
"Los objetos :class:`Popen` proporcionados por el módulo :mod:`subprocess` "
"tienen ahora métodos :meth:`terminate`, :meth:`kill` y :meth:`send_signal`. "
"En Windows, :meth:`send_signal` sólo soporta la señal :const:`SIGTERM`, y "
"todos estos métodos son alias de la función de la API Win32 :c:func:"
"`TerminateProcess`. (Contribuido por Christian Heimes.)"
#: ../Doc/whatsnew/2.6.rst:2403
msgid ""
"A new variable in the :mod:`sys` module, :attr:`float_info`, is an object "
"containing information derived from the :file:`float.h` file about the "
"platform's floating-point support. Attributes of this object include :attr:"
"`mant_dig` (number of digits in the mantissa), :attr:`epsilon` (smallest "
"difference between 1.0 and the next largest value representable), and "
"several others. (Contributed by Christian Heimes; :issue:`1534`.)"
msgstr ""
"Una nueva variable en el módulo :mod:`sys`, :attr:`float_info`, es un objeto "
"que contiene información derivada del archivo :file:`float.h` sobre el "
"soporte de punto flotante de la plataforma. Los atributos de este objeto "
"incluyen :attr:`mant_dig` (número de dígitos en la mantisa), :attr:`epsilon` "
"(diferencia más pequeña entre 1.0 y el siguiente valor más grande "
"representable), y varios otros. (Contribuido por Christian Heimes; :issue:"
"`1534`.)"
#: ../Doc/whatsnew/2.6.rst:2411
msgid ""
"Another new variable, :attr:`dont_write_bytecode`, controls whether Python "
"writes any :file:`.pyc` or :file:`.pyo` files on importing a module. If this "
"variable is true, the compiled files are not written. The variable is "
"initially set on start-up by supplying the :option:`-B` switch to the Python "
"interpreter, or by setting the :envvar:`PYTHONDONTWRITEBYTECODE` environment "
"variable before running the interpreter. Python code can subsequently "
"change the value of this variable to control whether bytecode files are "
"written or not. (Contributed by Neal Norwitz and Georg Brandl.)"
msgstr ""
"Otra nueva variable, :attr:`dont_write_bytecode`, controla si Python escribe "
"algún archivo :file:`.pyc` o :file:`.pyo` al importar un módulo. Si esta "
"variable es verdadera, los archivos compilados no se escriben. La variable "
"se establece inicialmente al iniciar el intérprete de Python con la opción :"
"option:`-B`, o estableciendo la variable de entorno :envvar:"
"`PYTHONDONTWRITEBYTECODE` antes de ejecutar el intérprete. El código de "
"Python puede cambiar posteriormente el valor de esta variable para controlar "
"si los archivos de código de bytes se escriben o no. (Contribución de Neal "
"Norwitz y Georg Brandl)"
#: ../Doc/whatsnew/2.6.rst:2422
msgid ""
"Information about the command-line arguments supplied to the Python "
"interpreter is available by reading attributes of a named tuple available as "
"``sys.flags``. For example, the :attr:`verbose` attribute is true if Python "
"was executed in verbose mode, :attr:`debug` is true in debugging mode, etc. "
"These attributes are all read-only. (Contributed by Christian Heimes.)"
msgstr ""
"La información sobre los argumentos de la línea de comandos suministrados al "
"intérprete de Python está disponible leyendo los atributos de una tupla con "
"nombre disponible como ``sys.flags``. Por ejemplo, el atributo :attr:"
"`verbose` es verdadero si Python fue ejecutado en modo verbose, :attr:"
"`debug` es verdadero en modo debugging, etc. Todos estos atributos son de "
"sólo lectura. (Contribución de Christian Heimes)"
#: ../Doc/whatsnew/2.6.rst:2430
msgid ""
"A new function, :func:`getsizeof`, takes a Python object and returns the "
"amount of memory used by the object, measured in bytes. Built-in objects "
"return correct results; third-party extensions may not, but can define a :"
"meth:`__sizeof__` method to return the object's size. (Contributed by Robert "
"Schuppenies; :issue:`2898`.)"
msgstr ""
"Una nueva función, :func:`getsizeof`, toma un objeto Python y devuelve la "
"cantidad de memoria utilizada por el objeto, medida en bytes. Los objetos "
"incorporados devuelven resultados correctos; las extensiones de terceros "
"pueden no hacerlo, pero pueden definir un método :meth:`__sizeof__` para "
"devolver el tamaño del objeto. (Contribución de Robert Schuppenies; :issue:"
"`2898`.)"
#: ../Doc/whatsnew/2.6.rst:2437
msgid ""
"It's now possible to determine the current profiler and tracer functions by "
"calling :func:`sys.getprofile` and :func:`sys.gettrace`. (Contributed by "
"Georg Brandl; :issue:`1648`.)"
msgstr ""
"Ahora es posible determinar las funciones actuales del perfilador y del "
"trazador llamando a :func:`sys.getprofile` y :func:`sys.gettrace`. "
"(Contribuido por Georg Brandl; :issue:`1648`.)"
#: ../Doc/whatsnew/2.6.rst:2441
msgid ""
"The :mod:`tarfile` module now supports POSIX.1-2001 (pax) tarfiles in "
"addition to the POSIX.1-1988 (ustar) and GNU tar formats that were already "
"supported. The default format is GNU tar; specify the ``format`` parameter "
"to open a file using a different format::"
msgstr ""
"El módulo :mod:`tarfile` soporta ahora archivos tar POSIX.1-2001 (pax) "
"además de los formatos POSIX.1-1988 (ustar) y GNU tar que ya estaban "
"soportados. El formato por defecto es GNU tar; especifique el parámetro "
"``format`` para abrir un archivo con un formato diferente::"
#: ../Doc/whatsnew/2.6.rst:2449
msgid ""
"The new ``encoding`` and ``errors`` parameters specify an encoding and an "
"error handling scheme for character conversions. ``'strict'``, "
"``'ignore'``, and ``'replace'`` are the three standard ways Python can "
"handle errors,; ``'utf-8'`` is a special value that replaces bad characters "
"with their UTF-8 representation. (Character conversions occur because the "
"PAX format supports Unicode filenames, defaulting to UTF-8 encoding.)"
msgstr ""
"Los nuevos parámetros ``encoding`` y ``errors`` especifican una codificación "
"y un esquema de manejo de errores para las conversiones de caracteres. "
"``'strict'``, ``'ignore'``, y ``'replace'`` son las tres formas estándar en "
"las que Python puede manejar los errores; ``'utf-8'`` es un valor especial "
"que reemplaza los caracteres erróneos con su representación UTF-8. (Las "
"conversiones de caracteres ocurren porque el formato PAX soporta nombres de "
"archivo Unicode, por defecto con codificación UTF-8)"
#: ../Doc/whatsnew/2.6.rst:2457
msgid ""
"The :meth:`TarFile.add` method now accepts an ``exclude`` argument that's a "
"function that can be used to exclude certain filenames from an archive. The "
"function must take a filename and return true if the file should be excluded "
"or false if it should be archived. The function is applied to both the name "
"initially passed to :meth:`add` and to the names of files in recursively "
"added directories."
msgstr ""
"El método :meth:`TarFile.add` ahora acepta un argumento ``exclude`` que es "
"una función que se puede usar para excluir ciertos nombres de archivo de un "
"archivo. La función debe tomar un nombre de archivo y retornar verdadero si "
"el archivo debe excluirse o falso si debe archivarse. La función se aplica "
"tanto al nombre pasado inicialmente a :meth:`add` como a los nombres de los "
"archivos en los directorios agregados recursivamente."
#: ../Doc/whatsnew/2.6.rst:2465
msgid "(All changes contributed by Lars Gustäbel)."
msgstr "(Todos los cambios han sido aportados por Lars Gustäbel)."
#: ../Doc/whatsnew/2.6.rst:2467
msgid ""
"An optional ``timeout`` parameter was added to the :class:`telnetlib.Telnet` "
"class constructor, specifying a timeout measured in seconds. (Added by "
"Facundo Batista.)"
msgstr ""
"Se agregó un parámetro opcional ``timeout`` al constructor de la clase :"
"class:`telnetlib.Telnet`, especificando un tiempo de espera medido en "
"segundos. (Añadido por Facundo Batista)"
#: ../Doc/whatsnew/2.6.rst:2471
msgid ""
"The :class:`tempfile.NamedTemporaryFile` class usually deletes the temporary "
"file it created when the file is closed. This behaviour can now be changed "
"by passing ``delete=False`` to the constructor. (Contributed by Damien "
"Miller; :issue:`1537850`.)"
msgstr ""
"La clase :class:`tempfile.NamedTemporaryFile` suele borrar el archivo "
"temporal que ha creado cuando se cierra el archivo. Este comportamiento se "
"puede cambiar pasando ``delete=False`` al constructor. (Contribución de "
"Damien Miller; :issue:`1537850`.)"
#: ../Doc/whatsnew/2.6.rst:2476
msgid ""
"A new class, :class:`SpooledTemporaryFile`, behaves like a temporary file "
"but stores its data in memory until a maximum size is exceeded. On reaching "
"that limit, the contents will be written to an on-disk temporary file. "
"(Contributed by Dustin J. Mitchell.)"
msgstr ""
"Una nueva clase, :class:`SpooledTemporaryFile`, se comporta como un archivo "
"temporal pero almacena sus datos en memoria hasta que se supera un tamaño "
"máximo. Al llegar a ese límite, el contenido se escribirá en un archivo "
"temporal en el disco. (Contribución de Dustin J. Mitchell)"
#: ../Doc/whatsnew/2.6.rst:2481
msgid ""
"The :class:`NamedTemporaryFile` and :class:`SpooledTemporaryFile` classes "
"both work as context managers, so you can write ``with tempfile."
"NamedTemporaryFile() as tmp: ...``. (Contributed by Alexander Belopolsky; :"
"issue:`2021`.)"
msgstr ""
"Las clases :class:`NamedTemporaryFile` y :class:`SpooledTemporaryFile` "
"funcionan como gestores de contexto, por lo que puedes escribir ``con "
"tempfile.NamedTemporaryFile() como tmp: ...``. (Contribuido por Alexander "
"Belopolsky; :issue:`2021`.)"
#: ../Doc/whatsnew/2.6.rst:2486
msgid ""
"The :mod:`test.test_support` module gained a number of context managers "
"useful for writing tests. :func:`EnvironmentVarGuard` is a context manager "
"that temporarily changes environment variables and automatically restores "
"them to their old values."
msgstr ""
"El módulo :mod:`test.test_support` obtuvo una serie de gestores de contexto "
"útiles para escribir pruebas. :func:`EnvironmentVarGuard` es un gestor de "
"contexto que cambia temporalmente las variables de entorno y las restaura "
"automáticamente a sus valores anteriores."
#: ../Doc/whatsnew/2.6.rst:2492
msgid ""
"Another context manager, :class:`TransientResource`, can surround calls to "
"resources that may or may not be available; it will catch and ignore a "
"specified list of exceptions. For example, a network test may ignore "
"certain failures when connecting to an external web site::"
msgstr ""
"Otro gestor de contexto, :class:`TransientResource`, puede rodear las "
"llamadas a recursos que pueden o no estar disponibles; atrapará e ignorará "
"una lista especificada de excepciones. Por ejemplo, una prueba de red puede "
"ignorar ciertos fallos al conectarse a un sitio web externo::"
#: ../Doc/whatsnew/2.6.rst:2503
msgid ""
"Finally, :func:`check_warnings` resets the :mod:`warning` module's warning "
"filters and returns an object that will record all warning messages "
"triggered (:issue:`3781`)::"
msgstr ""
"Por último, :func:`check_warnings` restablece los filtros de advertencia del "
"módulo :mod:`warning` y devuelve un objeto que registrará todos los mensajes "
"de advertencia activados (:issue:`3781`)::"
#: ../Doc/whatsnew/2.6.rst:2513
msgid "(Contributed by Brett Cannon.)"
msgstr "(Contribución de Brett Cannon.)"
#: ../Doc/whatsnew/2.6.rst:2515
msgid ""
"The :mod:`textwrap` module can now preserve existing whitespace at the "
"beginnings and ends of the newly created lines by specifying "
"``drop_whitespace=False`` as an argument::"
msgstr ""
"El módulo :mod:`textwrap` ahora puede conservar los espacios en blanco "
"existentes al principio y al final de las líneas recién creadas "
"especificando ``drop_whitespace=False`` como argumento:"
#: ../Doc/whatsnew/2.6.rst:2534
msgid "(Contributed by Dwayne Bailey; :issue:`1581073`.)"
msgstr "(Contribución de Dwayne Bailey; :issue:`1581073`.)"
#: ../Doc/whatsnew/2.6.rst:2536
msgid ""
"The :mod:`threading` module API is being changed to use properties such as :"
"attr:`daemon` instead of :meth:`setDaemon` and :meth:`isDaemon` methods, and "
"some methods have been renamed to use underscores instead of camel-case; for "
"example, the :meth:`activeCount` method is renamed to :meth:`active_count`. "
"Both the 2.6 and 3.0 versions of the module support the same properties and "
"renamed methods, but don't remove the old methods. No date has been set for "
"the deprecation of the old APIs in Python 3.x; the old APIs won't be removed "
"in any 2.x version. (Carried out by several people, most notably Benjamin "
"Peterson.)"
msgstr ""
"La API del módulo :mod:`threading` se ha cambiado para utilizar propiedades "
"como :attr:`daemon` en lugar de los métodos :meth:`setDaemon` y :meth:"
"`isDaemon`, y algunos métodos se han renombrado para utilizar guiones bajos "
"en lugar de mayúsculas; por ejemplo, el método :meth:`activeCount` se ha "
"renombrado a :meth:`active_count`. Tanto la versión 2.6 como la 3.0 del "
"módulo soportan las mismas propiedades y métodos renombrados, pero no "
"eliminan los métodos antiguos. No se ha fijado una fecha para la "
"eliminación de las antiguas APIs en Python 3.x; las antiguas APIs no se "
"eliminarán en ninguna versión 2.x. (Llevado a cabo por varias personas, "
"sobre todo por Benjamin Peterson)"
#: ../Doc/whatsnew/2.6.rst:2547
msgid ""
"The :mod:`threading` module's :class:`Thread` objects gained an :attr:"
"`ident` property that returns the thread's identifier, a nonzero integer. "
"(Contributed by Gregory P. Smith; :issue:`2871`.)"
msgstr ""
"Los objetos :mod:`threading` del módulo :class:`Thread` han ganado una "
"propiedad :attr:`ident` que devuelve el identificador del hilo, un entero no "
"nulo. (Contribución de Gregory P. Smith; :issue:`2871`.)"
#: ../Doc/whatsnew/2.6.rst:2552
msgid ""
"The :mod:`timeit` module now accepts callables as well as strings for the "
"statement being timed and for the setup code. Two convenience functions were "
"added for creating :class:`Timer` instances: ``repeat(stmt, setup, time, "
"repeat, number)`` and ``timeit(stmt, setup, time, number)`` create an "
"instance and call the corresponding method. (Contributed by Erik Demaine; :"
"issue:`1533909`.)"
msgstr ""
"El módulo :mod:`timeit` acepta ahora callables así como cadenas para la "
"sentencia que se está cronometrando y para el código de configuración. Se "
"han añadido dos funciones para crear instancias de :class:`Timer`: "
"``repeat(stmt, setup, time, repeat, number)`` y ``timeit(stmt, setup, time, "
"number)`` crean una instancia y llaman al método correspondiente. "
"(Contribución de Erik Demaine; :issue:`1533909`.)"
#: ../Doc/whatsnew/2.6.rst:2561
msgid ""
"The :mod:`Tkinter` module now accepts lists and tuples for options, "
"separating the elements by spaces before passing the resulting value to Tcl/"
"Tk. (Contributed by Guilherme Polo; :issue:`2906`.)"
msgstr ""
"El módulo :mod:`Tkinter` ahora acepta listas y tuplas para las opciones, "
"separando los elementos por espacios antes de pasar el valor resultante a "
"Tcl/Tk. (Contribuido por Guilherme Polo; :issue:`2906`.)"
#: ../Doc/whatsnew/2.6.rst:2566
msgid ""
"The :mod:`turtle` module for turtle graphics was greatly enhanced by Gregor "
"Lingl. New features in the module include:"
msgstr ""
"El módulo :mod:`turtle` para los gráficos de tortugas ha sido muy mejorado "
"por Gregor Lingl. Las nuevas características del módulo incluyen:"
#: ../Doc/whatsnew/2.6.rst:2569
msgid "Better animation of turtle movement and rotation."
msgstr "Mejor animación del movimiento y la rotación de la tortuga."
#: ../Doc/whatsnew/2.6.rst:2570
msgid ""
"Control over turtle movement using the new :meth:`delay`, :meth:`tracer`, "
"and :meth:`speed` methods."
msgstr ""
"Control del movimiento de las tortugas mediante los nuevos métodos :meth:"
"`retraso`, :meth:`tracer` y :meth:`velocidad`."
#: ../Doc/whatsnew/2.6.rst:2572
msgid ""
"The ability to set new shapes for the turtle, and to define a new coordinate "
"system."
msgstr ""
"La posibilidad de establecer nuevas formas para la tortuga y de definir un "
"nuevo sistema de coordenadas."
#: ../Doc/whatsnew/2.6.rst:2574
msgid "Turtles now have an :meth:`undo()` method that can roll back actions."
msgstr ""
"Las tortugas ahora tienen un método :meth:`undo()` que puede revertir las "
"acciones."
#: ../Doc/whatsnew/2.6.rst:2575
msgid ""
"Simple support for reacting to input events such as mouse and keyboard "
"activity, making it possible to write simple games."
msgstr ""
"Soporte sencillo para reaccionar a eventos de entrada como la actividad del "
"ratón y del teclado, lo que permite escribir juegos sencillos."
#: ../Doc/whatsnew/2.6.rst:2577
msgid ""
"A :file:`turtle.cfg` file can be used to customize the starting appearance "
"of the turtle's screen."
msgstr ""
"Se puede utilizar un archivo :file:`turtle.cfg` para personalizar la "
"apariencia inicial de la pantalla de la tortuga."
#: ../Doc/whatsnew/2.6.rst:2579
msgid ""
"The module's docstrings can be replaced by new docstrings that have been "
"translated into another language."
msgstr ""
"Los docstrings del módulo pueden ser sustituidos por nuevos docstrings "
"traducidos a otro idioma."
#: ../Doc/whatsnew/2.6.rst:2582
msgid "(:issue:`1513695`)"
msgstr "(:issue:`1513695`)"
#: ../Doc/whatsnew/2.6.rst:2584
msgid ""
"An optional ``timeout`` parameter was added to the :func:`urllib.urlopen` "
"function and the :class:`urllib.ftpwrapper` class constructor, as well as "
"the :func:`urllib2.urlopen` function. The parameter specifies a timeout "
"measured in seconds. For example::"
msgstr ""
"Se ha añadido un parámetro opcional ``timeout`` a la función :func:`urllib."
"urlopen` y al constructor de la clase :class:`urllib.ftpwrapper`, así como a "
"la función :func:`urllib2.urlopen`. El parámetro especifica un tiempo de "
"espera medido en segundos. Por ejemplo::"
#: ../Doc/whatsnew/2.6.rst:2597
msgid "(Added by Facundo Batista.)"
msgstr "(Añadido por Facundo Batista.)"
#: ../Doc/whatsnew/2.6.rst:2599
msgid ""
"The Unicode database provided by the :mod:`unicodedata` module has been "
"updated to version 5.1.0. (Updated by Martin von Löwis; :issue:`3811`.)"
msgstr ""
"La base de datos Unicode proporcionada por el módulo :mod:`unicodedata` ha "
"sido actualizada a la versión 5.1.0. (Actualizado por Martin von Löwis; :"
"issue:`3811`.)"
#: ../Doc/whatsnew/2.6.rst:2603
msgid ""
"The :mod:`warnings` module's :func:`formatwarning` and :func:`showwarning` "
"gained an optional *line* argument that can be used to supply the line of "
"source code. (Added as part of :issue:`1631171`, which re-implemented part "
"of the :mod:`warnings` module in C code.)"
msgstr ""
"Las funciones :mod:`warnings` del módulo :func:`formatwarning` y :func:"
"`showwarning` han ganado un argumento opcional *line* que puede utilizarse "
"para proporcionar la línea de código fuente. (Añadido como parte de :issue:"
"`1631171`, que reimplementaba parte del módulo :mod:`warnings` en código C)"
#: ../Doc/whatsnew/2.6.rst:2608
msgid ""
"A new function, :func:`catch_warnings`, is a context manager intended for "
"testing purposes that lets you temporarily modify the warning filters and "
"then restore their original values (:issue:`3781`)."
msgstr ""
"Una nueva función, :func:`catch_warnings`, es un gestor de contexto "
"destinado a la realización de pruebas que permite modificar temporalmente "
"los filtros de advertencia y luego restaurar sus valores originales (:issue:"
"`3781`)."
#: ../Doc/whatsnew/2.6.rst:2612
msgid ""
"The XML-RPC :class:`SimpleXMLRPCServer` and :class:`DocXMLRPCServer` classes "
"can now be prevented from immediately opening and binding to their socket by "
"passing ``False`` as the *bind_and_activate* constructor parameter. This "
"can be used to modify the instance's :attr:`allow_reuse_address` attribute "
"before calling the :meth:`server_bind` and :meth:`server_activate` methods "
"to open the socket and begin listening for connections. (Contributed by "
"Peter Parente; :issue:`1599845`.)"
msgstr ""
"Las clases XML-RPC :class:`SimpleXMLRPCServer` y :class:`DocXMLRPCServer` "
"pueden ahora evitar que se abran inmediatamente y se vinculen a su socket "
"pasando ``False`` como parámetro del constructor *bind_and_activate*. Esto "
"puede usarse para modificar el atributo :attr:`allow_reuse_address` de la "
"instancia antes de llamar a los métodos :meth:`server_bind` y :meth:"
"`server_activate` para abrir el socket y comenzar a escuchar conexiones. "
"(Contribuido por Peter Parente; :issue:`1599845`.)"
#: ../Doc/whatsnew/2.6.rst:2621
msgid ""
":class:`SimpleXMLRPCServer` also has a :attr:`_send_traceback_header` "
"attribute; if true, the exception and formatted traceback are returned as "
"HTTP headers \"X-Exception\" and \"X-Traceback\". This feature is for "
"debugging purposes only and should not be used on production servers because "
"the tracebacks might reveal passwords or other sensitive information. "
"(Contributed by Alan McIntyre as part of his project for Google's Summer of "
"Code 2007.)"
msgstr ""
":class:`SimpleXMLRPCServer` también tiene un atributo :attr:"
"`_send_traceback_header`; si es true, la excepción y el traceback formateado "
"se devuelven como cabeceras HTTP \"X-Exception\" y \"X-Traceback\". Esta "
"característica es sólo para propósitos de depuración y no debe ser usada en "
"servidores de producción porque los trazos pueden revelar contraseñas u otra "
"información sensible. (Contribuido por Alan McIntyre como parte de su "
"proyecto para el Summer of Code 2007 de Google)"
#: ../Doc/whatsnew/2.6.rst:2629
msgid ""
"The :mod:`xmlrpclib` module no longer automatically converts :class:"
"`datetime.date` and :class:`datetime.time` to the :class:`xmlrpclib."
"DateTime` type; the conversion semantics were not necessarily correct for "
"all applications. Code using :mod:`xmlrpclib` should convert :class:`date` "
"and :class:`~datetime.time` instances. (:issue:`1330538`) The code can also "
"handle dates before 1900 (contributed by Ralf Schmitt; :issue:`2014`) and 64-"
"bit integers represented by using ```` in XML-RPC responses (contributed "
"by Riku Lindblad; :issue:`2985`)."
msgstr ""
"El módulo :mod:`xmlrpclib` ya no convierte automáticamente las instancias :"
"class:`datetime.date` y :class:`datetime.time` al tipo :class:`xmlrpclib."
"DateTime`; la semántica de conversión no era necesariamente correcta para "
"todas las aplicaciones. El código que utiliza :mod:`xmlrpclib` debe "
"convertir las instancias :class:`date` y :class:`~datetime.time`. (:issue:"
"`1330538`) El código también puede manejar fechas anteriores a 1900 "
"(contribución de Ralf Schmitt; :issue:`2014`) y enteros de 64 bits "
"representados mediante el uso de ```` en las respuestas XML-RPC "
"(contribución de Riku Lindblad; :issue:`2985`)."
#: ../Doc/whatsnew/2.6.rst:2639
msgid ""
"The :mod:`zipfile` module's :class:`ZipFile` class now has :meth:`extract` "
"and :meth:`extractall` methods that will unpack a single file or all the "
"files in the archive to the current directory, or to a specified directory::"
msgstr ""
"La clase :mod:`zipfile` del módulo :class:`ZipFile` tiene ahora los métodos :"
"meth:`extract` y :meth:`extractall` que desempaquetarán un solo fichero o "
"todos los ficheros del archivo en el directorio actual, o en un directorio "
"especificado::"
#: ../Doc/whatsnew/2.6.rst:2653
msgid "(Contributed by Alan McIntyre; :issue:`467924`.)"
msgstr "(Contribución de Alan McIntyre; :issue:`467924`.)"
#: ../Doc/whatsnew/2.6.rst:2655
msgid ""
"The :meth:`open`, :meth:`read` and :meth:`extract` methods can now take "
"either a filename or a :class:`ZipInfo` object. This is useful when an "
"archive accidentally contains a duplicated filename. (Contributed by Graham "
"Horler; :issue:`1775025`.)"
msgstr ""
"Los métodos :meth:`open`, :meth:`read` y :meth:`extract` ahora pueden tomar "
"un nombre de archivo o un objeto :class:`ZipInfo`. Esto es útil cuando un "
"archivo contiene accidentalmente un nombre de archivo duplicado. "
"(Contribución de Graham Horler; :issue:`1775025`.)"
#: ../Doc/whatsnew/2.6.rst:2660
msgid ""
"Finally, :mod:`zipfile` now supports using Unicode filenames for archived "
"files. (Contributed by Alexey Borzenkov; :issue:`1734346`.)"
msgstr ""
"Por último, :mod:`zipfile` soporta ahora el uso de nombres de archivo "
"Unicode para los ficheros archivados. (Contribución de Alexey Borzenkov; :"
"issue:`1734346`.)"
#: ../Doc/whatsnew/2.6.rst:2667
msgid "The :mod:`ast` module"
msgstr "El módulo :mod:`ast`"
#: ../Doc/whatsnew/2.6.rst:2669
msgid ""
"The :mod:`ast` module provides an Abstract Syntax Tree representation of "
"Python code, and Armin Ronacher contributed a set of helper functions that "
"perform a variety of common tasks. These will be useful for HTML templating "
"packages, code analyzers, and similar tools that process Python code."
msgstr ""
"El módulo :mod:`ast` proporciona una representación de árbol de sintaxis "
"abstracta del código Python, y Armin Ronacher ha contribuido con un conjunto "
"de funciones de ayuda que realizan una variedad de tareas comunes. Éstas "
"serán útiles para paquetes de plantillas HTML, analizadores de código y "
"herramientas similares que procesan código Python."
#: ../Doc/whatsnew/2.6.rst:2676
msgid ""
"The :func:`parse` function takes an expression and returns an AST. The :func:"
"`dump` function outputs a representation of a tree, suitable for debugging::"
msgstr ""
"La función :func:`parse` toma una expresión y devuelve un AST. La función :"
"func:`dump` devuelve una representación de un árbol, adecuada para la "
"depuración::"
#: ../Doc/whatsnew/2.6.rst:2690
msgid "This outputs a deeply nested tree::"
msgstr "Esto produce un árbol profundamente anidado::"
#: ../Doc/whatsnew/2.6.rst:2723
msgid ""
"The :func:`literal_eval` method takes a string or an AST representing a "
"literal expression, parses and evaluates it, and returns the resulting "
"value. A literal expression is a Python expression containing only strings, "
"numbers, dictionaries, etc. but no statements or function calls. If you "
"need to evaluate an expression but cannot accept the security risk of using "
"an :func:`eval` call, :func:`literal_eval` will handle it safely::"
msgstr ""
"El método :func:`literal_eval` toma una cadena o un AST que representa una "
"expresión literal, la analiza y evalúa, y devuelve el valor resultante. Una "
"expresión literal es una expresión de Python que sólo contiene cadenas, "
"números, diccionarios, etc. pero no declaraciones o llamadas a funciones. "
"Si necesita evaluar una expresión pero no puede aceptar el riesgo de "
"seguridad que supone utilizar una llamada a :func:`eval`, :func:"
"`literal_eval` lo hará de forma segura::"
#: ../Doc/whatsnew/2.6.rst:2739
msgid ""
"The module also includes :class:`NodeVisitor` and :class:`NodeTransformer` "
"classes for traversing and modifying an AST, and functions for common "
"transformations such as changing line numbers."
msgstr ""
"El módulo también incluye las clases :class:`NodeVisitor` y :class:"
"`NodeTransformer` para recorrer y modificar un AST, y funciones para "
"transformaciones comunes como el cambio de números de línea."
#: ../Doc/whatsnew/2.6.rst:2747
msgid "The :mod:`future_builtins` module"
msgstr "El módulo :mod:`future_builtins`"
#: ../Doc/whatsnew/2.6.rst:2749
msgid ""
"Python 3.0 makes many changes to the repertoire of built-in functions, and "
"most of the changes can't be introduced in the Python 2.x series because "
"they would break compatibility. The :mod:`future_builtins` module provides "
"versions of these built-in functions that can be imported when writing 3.0-"
"compatible code."
msgstr ""
"Python 3.0 introduce muchos cambios en el repertorio de funciones "
"incorporadas, y la mayoría de los cambios no pueden introducirse en la serie "
"Python 2.x porque romperían la compatibilidad. El módulo :mod:"
"`future_builtins` proporciona versiones de estas funciones incorporadas que "
"pueden importarse al escribir código compatible con la versión 3.0."
#: ../Doc/whatsnew/2.6.rst:2756
msgid "The functions in this module currently include:"
msgstr "Las funciones de este módulo incluyen actualmente:"
#: ../Doc/whatsnew/2.6.rst:2758
msgid ""
"``ascii(obj)``: equivalent to :func:`repr`. In Python 3.0, :func:`repr` "
"will return a Unicode string, while :func:`ascii` will return a pure ASCII "
"bytestring."
msgstr ""
"``ascii(obj)``: equivalente a :func:`repr`. En Python 3.0, :func:`repr` "
"devolverá una cadena Unicode, mientras que :func:`ascii` devolverá una "
"cadena de bytes ASCII pura."
#: ../Doc/whatsnew/2.6.rst:2762
msgid ""
"``filter(predicate, iterable)``, ``map(func, iterable1, ...)``: the 3.0 "
"versions return iterators, unlike the 2.x builtins which return lists."
msgstr ""
"``filtro(predicado, iterable)``, ``map(func, iterable1, ...)``: las "
"versiones 3.0 devuelven iteradores, a diferencia de las funciones integradas "
"2.x que devuelven listas."
#: ../Doc/whatsnew/2.6.rst:2766
msgid ""
"``hex(value)``, ``oct(value)``: instead of calling the :meth:`__hex__` or :"
"meth:`__oct__` methods, these versions will call the :meth:`__index__` "
"method and convert the result to hexadecimal or octal. :func:`oct` will use "
"the new ``0o`` notation for its result."
msgstr ""
"``hex(valor)``, ``oct(valor)``: en lugar de llamar a los métodos :meth:"
"`__hex__` o :meth:`__oct__`, estas versiones llamarán al método :meth:"
"`__index__` y convertirán el resultado a hexadecimal u octal. :func:`oct` "
"utilizará la nueva notación ``0o`` para su resultado."
#: ../Doc/whatsnew/2.6.rst:2775
msgid "The :mod:`json` module: JavaScript Object Notation"
msgstr "El módulo :mod:`json`: Notación de objetos de JavaScript"
#: ../Doc/whatsnew/2.6.rst:2777
msgid ""
"The new :mod:`json` module supports the encoding and decoding of Python "
"types in JSON (Javascript Object Notation). JSON is a lightweight "
"interchange format often used in web applications. For more information "
"about JSON, see http://www.json.org."
msgstr ""
"El nuevo módulo :mod:`json` soporta la codificación y decodificación de "
"tipos Python en JSON (*Javascript Object Notation*). JSON es un formato de "
"intercambio ligero que se utiliza a menudo en las aplicaciones web. Para más "
"información sobre JSON, consulte http://www.json.org."
#: ../Doc/whatsnew/2.6.rst:2782
msgid ""
":mod:`json` comes with support for decoding and encoding most built-in "
"Python types. The following example encodes and decodes a dictionary::"
msgstr ""
":mod:`json` viene con soporte para decodificar y codificar la mayoría de los "
"tipos incorporados de Python. El siguiente ejemplo codifica y decodifica un "
"diccionario::"
#: ../Doc/whatsnew/2.6.rst:2793
msgid ""
"It's also possible to write your own decoders and encoders to support more "
"types. Pretty-printing of the JSON strings is also supported."
msgstr ""
"También es posible escribir tus propios decodificadores y codificadores para "
"soportar más tipos. También se admite la impresión bonita de las cadenas "
"JSON."
#: ../Doc/whatsnew/2.6.rst:2796
msgid ":mod:`json` (originally called simplejson) was written by Bob Ippolito."
msgstr ""
":mod:`json` (originalmente llamado simplejson) fue escrito por Bob Ippolito."
#: ../Doc/whatsnew/2.6.rst:2803
msgid "The :mod:`plistlib` module: A Property-List Parser"
msgstr "El módulo :mod:`plistlib`: Un analizador de listas de propiedades"
#: ../Doc/whatsnew/2.6.rst:2805
msgid ""
"The ``.plist`` format is commonly used on Mac OS X to store basic data types "
"(numbers, strings, lists, and dictionaries) by serializing them into an XML-"
"based format. It resembles the XML-RPC serialization of data types."
msgstr ""
"El formato ``.plist`` se utiliza habitualmente en Mac OS X para almacenar "
"tipos de datos básicos (números, cadenas, listas y diccionarios) "
"serializándolos en un formato basado en XML. Se asemeja a la serialización "
"XML-RPC de los tipos de datos."
#: ../Doc/whatsnew/2.6.rst:2810
msgid ""
"Despite being primarily used on Mac OS X, the format has nothing Mac-"
"specific about it and the Python implementation works on any platform that "
"Python supports, so the :mod:`plistlib` module has been promoted to the "
"standard library."
msgstr ""
"A pesar de ser utilizado principalmente en Mac OS X, el formato no tiene "
"nada de específico para Mac y la implementación de Python funciona en "
"cualquier plataforma que soporte Python, por lo que el módulo :mod:"
"`plistlib` ha sido promovido a la biblioteca estándar."
#: ../Doc/whatsnew/2.6.rst:2815
msgid "Using the module is simple::"
msgstr "El uso del módulo es sencillo::"
#: ../Doc/whatsnew/2.6.rst:2842
msgid "ctypes Enhancements"
msgstr "mejoras en ctypes"
#: ../Doc/whatsnew/2.6.rst:2844
msgid ""
"Thomas Heller continued to maintain and enhance the :mod:`ctypes` module."
msgstr "Thomas Heller siguió manteniendo y mejorando el módulo :mod:`ctypes`."
#: ../Doc/whatsnew/2.6.rst:2847
msgid ""
":mod:`ctypes` now supports a :class:`c_bool` datatype that represents the "
"C99 ``bool`` type. (Contributed by David Remahl; :issue:`1649190`.)"
msgstr ""
":mod:`ctypes` soporta ahora un tipo de datos :class:`c_bool` que representa "
"el tipo C99 ``bool``. (Contribución de David Remahl; :issue:`1649190`.)"
#: ../Doc/whatsnew/2.6.rst:2851
msgid ""
"The :mod:`ctypes` string, buffer and array types have improved support for "
"extended slicing syntax, where various combinations of ``(start, stop, "
"step)`` are supplied. (Implemented by Thomas Wouters.)"
msgstr ""
"Los tipos de cadena, buffer y array de :mod:`ctypes` han mejorado el soporte "
"para la sintaxis de corte extendida, donde se suministran varias "
"combinaciones de ``(start, stop, step)``. (Implementado por Thomas Wouters)"
#: ../Doc/whatsnew/2.6.rst:2858
msgid ""
"All :mod:`ctypes` data types now support :meth:`from_buffer` and :meth:"
"`from_buffer_copy` methods that create a ctypes instance based on a provided "
"buffer object. :meth:`from_buffer_copy` copies the contents of the object, "
"while :meth:`from_buffer` will share the same memory area."
msgstr ""
"Todos los tipos de datos :mod:`ctypes` soportan ahora los métodos :meth:"
"`from_buffer` y :meth:`from_buffer_copy` que crean una instancia de ctypes "
"basada en un objeto buffer proporcionado. :meth:`from_buffer_copy` copia el "
"contenido del objeto, mientras que :meth:`from_buffer` compartirá la misma "
"área de memoria."
#: ../Doc/whatsnew/2.6.rst:2865
msgid ""
"A new calling convention tells :mod:`ctypes` to clear the ``errno`` or Win32 "
"LastError variables at the outset of each wrapped call. (Implemented by "
"Thomas Heller; :issue:`1798`.)"
msgstr ""
"Una nueva convención de llamada indica a :mod:`ctypes` que borre las "
"variables ``errno`` o Win32 LastError al inicio de cada llamada envuelta. "
"(Implementado por Thomas Heller; :issue:`1798`.)"
#: ../Doc/whatsnew/2.6.rst:2869
msgid ""
"You can now retrieve the Unix ``errno`` variable after a function call. "
"When creating a wrapped function, you can supply ``use_errno=True`` as a "
"keyword parameter to the :func:`DLL` function and then call the module-level "
"methods :meth:`set_errno` and :meth:`get_errno` to set and retrieve the "
"error value."
msgstr ""
"Ahora puede recuperar la variable Unix ``errno`` después de una llamada a "
"una función. Al crear una función envuelta, puede suministrar "
"``use_errno=True`` como parámetro de palabra clave a la función :func:`DLL` "
"y luego llamar a los métodos de nivel de módulo :meth:`set_errno` y :meth:"
"`get_errno` para establecer y recuperar el valor del error."
#: ../Doc/whatsnew/2.6.rst:2875
msgid ""
"The Win32 LastError variable is similarly supported by the :func:`DLL`, :"
"func:`OleDLL`, and :func:`WinDLL` functions. You supply "
"``use_last_error=True`` as a keyword parameter and then call the module-"
"level methods :meth:`set_last_error` and :meth:`get_last_error`."
msgstr ""
"La variable Win32 LastError es soportada de forma similar por las funciones :"
"func:`DLL`, :func:`OleDLL`, y :func:`WinDLL`. Se suministra "
"``use_last_error=True`` como parámetro de palabra clave y luego se llaman "
"los métodos a nivel de módulo :meth:`set_last_error` y :meth:"
"`get_last_error`."
#: ../Doc/whatsnew/2.6.rst:2881
msgid ""
"The :func:`byref` function, used to retrieve a pointer to a ctypes instance, "
"now has an optional *offset* parameter that is a byte count that will be "
"added to the returned pointer."
msgstr ""
"La función :func:`byref`, utilizada para recuperar un puntero a una "
"instancia de ctypes, tiene ahora un parámetro opcional *offset* que es un "
"recuento de bytes que se añadirá al puntero devuelto."
#: ../Doc/whatsnew/2.6.rst:2888
msgid "Improved SSL Support"
msgstr "Mejora de la compatibilidad con SSL"
#: ../Doc/whatsnew/2.6.rst:2890
msgid ""
"Bill Janssen made extensive improvements to Python 2.6's support for the "
"Secure Sockets Layer by adding a new module, :mod:`ssl`, that's built atop "
"the `OpenSSL `__ library. This new module provides "
"more control over the protocol negotiated, the X.509 certificates used, and "
"has better support for writing SSL servers (as opposed to clients) in "
"Python. The existing SSL support in the :mod:`socket` module hasn't been "
"removed and continues to work, though it will be removed in Python 3.0."
msgstr ""
"Bill Janssen ha realizado amplias mejoras en el soporte de Python 2.6 para "
"la Capa de Conexión Segura añadiendo un nuevo módulo, :mod:`ssl`, que está "
"construido sobre la biblioteca `OpenSSL `__. Este "
"nuevo módulo proporciona más control sobre el protocolo negociado, los "
"certificados X.509 utilizados, y tiene un mejor soporte para escribir "
"servidores SSL (a diferencia de los clientes) en Python. El soporte SSL "
"existente en el módulo :mod:`socket` no ha sido eliminado y sigue "
"funcionando, aunque será eliminado en Python 3.0."
#: ../Doc/whatsnew/2.6.rst:2899
msgid ""
"To use the new module, you must first create a TCP connection in the usual "
"way and then pass it to the :func:`ssl.wrap_socket` function. It's possible "
"to specify whether a certificate is required, and to obtain certificate info "
"by calling the :meth:`getpeercert` method."
msgstr ""
"Para utilizar el nuevo módulo, primero hay que crear una conexión TCP de la "
"forma habitual y luego pasarla a la función :func:`ssl.wrap_socket`. Es "
"posible especificar si se requiere un certificado, y obtener información "
"sobre el mismo llamando al método :meth:`getpeercert`."
#: ../Doc/whatsnew/2.6.rst:2906
msgid "The documentation for the :mod:`ssl` module."
msgstr "La documentación del módulo :mod:`ssl`."
#: ../Doc/whatsnew/2.6.rst:2911
msgid "Deprecations and Removals"
msgstr "Cancelaciones y eliminaciones"
#: ../Doc/whatsnew/2.6.rst:2913 ../Doc/whatsnew/2.6.rst:3241
msgid ""
"String exceptions have been removed. Attempting to use them raises a :exc:"
"`TypeError`."
msgstr ""
"Se han eliminado las excepciones de cadena. Al intentar utilizarlas se "
"produce un :exc:`TypeError`."
#: ../Doc/whatsnew/2.6.rst:2916
msgid ""
"Changes to the :class:`Exception` interface as dictated by :pep:`352` "
"continue to be made. For 2.6, the :attr:`message` attribute is being "
"deprecated in favor of the :attr:`args` attribute."
msgstr ""
"Los cambios en la interfaz :class:`Exception` dictados por :pep:`352` siguen "
"realizándose. En la versión 2.6, el atributo :attr:`message` queda obsoleto "
"en favor del atributo :attr:`args`."
#: ../Doc/whatsnew/2.6.rst:2921
msgid ""
"(3.0-warning mode) Python 3.0 will feature a reorganized standard library "
"that will drop many outdated modules and rename others. Python 2.6 running "
"in 3.0-warning mode will warn about these modules when they are imported."
msgstr ""
"(modo 3.0-warning) Python 3.0 presentará una biblioteca estándar "
"reorganizada que eliminará muchos módulos obsoletos y renombrará otros. "
"Python 2.6 funcionando en modo 3.0-warning avisará de estos módulos cuando "
"se importen."
#: ../Doc/whatsnew/2.6.rst:2926
msgid ""
"The list of deprecated modules is: :mod:`audiodev`, :mod:`bgenlocations`, :"
"mod:`buildtools`, :mod:`bundlebuilder`, :mod:`Canvas`, :mod:`compiler`, :mod:"
"`dircache`, :mod:`dl`, :mod:`fpformat`, :mod:`gensuitemodule`, :mod:"
"`ihooks`, :mod:`imageop`, :mod:`imgfile`, :mod:`linuxaudiodev`, :mod:"
"`mhlib`, :mod:`mimetools`, :mod:`multifile`, :mod:`new`, :mod:`pure`, :mod:"
"`statvfs`, :mod:`sunaudiodev`, :mod:`test.testall`, and :mod:`toaiff`."
msgstr ""
"La lista de módulos obsoletos es: :mod:`audiodev`, :mod:`bgenlocations`, :"
"mod:`buildtools`, :mod:`bundlebuilder`, :mod:`Canvas`, :mod:`compiler`, :mod:"
"`dircache`, :mod:`dl`, :mod:`fpformat`, :mod:`gensuitemodule`, :mod:"
"`ihooks`, :mod:`imageop`, :mod:`imgfile`, :mod:`linuxaudiodev`, :mod:"
"`mhlib`, :mod:`mimetools`, :mod:`multifile`, :mod:`new`, :mod:`pure`, :mod:"
"`statvfs`, :mod:`sunaudiodev`, :mod:`test.testall`, y :mod:`toaiff`."
#: ../Doc/whatsnew/2.6.rst:2951
msgid "The :mod:`gopherlib` module has been removed."
msgstr "El módulo :mod:`gopherlib` ha sido eliminado."
#: ../Doc/whatsnew/2.6.rst:2953
msgid ""
"The :mod:`MimeWriter` module and :mod:`mimify` module have been deprecated; "
"use the :mod:`email` package instead."
msgstr ""
"El módulo :mod:`MimeWriter` y el módulo :mod:`mimify` han quedado obsoletos; "
"utilice en su lugar el paquete :mod:`email`."
#: ../Doc/whatsnew/2.6.rst:2957
msgid ""
"The :mod:`md5` module has been deprecated; use the :mod:`hashlib` module "
"instead."
msgstr ""
"El módulo :mod:`md5` ha quedado obsoleto; utilice en su lugar el módulo :mod:"
"`hashlib`."
#: ../Doc/whatsnew/2.6.rst:2960
msgid ""
"The :mod:`posixfile` module has been deprecated; :func:`fcntl.lockf` "
"provides better locking."
msgstr ""
"El módulo :mod:`posixfile` ha quedado obsoleto; :func:`fcntl.lockf` "
"proporciona un mejor bloqueo."
#: ../Doc/whatsnew/2.6.rst:2963
msgid ""
"The :mod:`popen2` module has been deprecated; use the :mod:`subprocess` "
"module."
msgstr ""
"El módulo :mod:`popen2` ha quedado obsoleto; utilice el módulo :mod:"
"`subprocess`."
#: ../Doc/whatsnew/2.6.rst:2966
msgid "The :mod:`rgbimg` module has been removed."
msgstr "Se ha eliminado el módulo :mod:`rgbimg`."
#: ../Doc/whatsnew/2.6.rst:2968
msgid ""
"The :mod:`sets` module has been deprecated; it's better to use the built-in :"
"class:`set` and :class:`frozenset` types."
msgstr ""
"El módulo :mod:`sets` ha quedado obsoleto; es mejor utilizar los tipos "
"incorporados :class:`set` y :class:`frozenset`."
#: ../Doc/whatsnew/2.6.rst:2971
msgid ""
"The :mod:`sha` module has been deprecated; use the :mod:`hashlib` module "
"instead."
msgstr ""
"El módulo :mod:`sha` ha quedado obsoleto; utilice en su lugar el módulo :mod:"
"`hashlib`."
#: ../Doc/whatsnew/2.6.rst:2979
msgid "Build and C API Changes"
msgstr "Cambios en la API de construcción y C"
#: ../Doc/whatsnew/2.6.rst:2981
msgid "Changes to Python's build process and to the C API include:"
msgstr ""
"Los cambios en el proceso de construcción de Python y en la API de C "
"incluyen:"
#: ../Doc/whatsnew/2.6.rst:2983
msgid ""
"Python now must be compiled with C89 compilers (after 19 years!). This "
"means that the Python source tree has dropped its own implementations of :c:"
"func:`!memmove` and :c:func:`!strerror`, which are in the C89 standard "
"library."
msgstr ""
"Python ahora debe ser compilado con compiladores C89 (¡después de 19 "
"años!). Esto significa que el árbol de fuentes de Python ha abandonado sus "
"propias implementaciones de :c:func:`!memmove` y :c:func:`!strerror`, que "
"están en la biblioteca estándar de C89."
#: ../Doc/whatsnew/2.6.rst:2988
msgid ""
"Python 2.6 can be built with Microsoft Visual Studio 2008 (version 9.0), and "
"this is the new default compiler. See the :file:`PCbuild` directory for the "
"build files. (Implemented by Christian Heimes.)"
msgstr ""
"Python 2.6 puede ser construido con Microsoft Visual Studio 2008 (versión "
"9.0), y este es el nuevo compilador por defecto. Ver el directorio :file:"
"`PCbuild` para los archivos de construcción. (Implementado por Christian "
"Heimes)"
#: ../Doc/whatsnew/2.6.rst:2993
msgid ""
"On Mac OS X, Python 2.6 can be compiled as a 4-way universal build. The :"
"program:`configure` script can take a :option:`!--with-universal-archs=[32-"
"bit|64-bit|all]` switch, controlling whether the binaries are built for 32-"
"bit architectures (x86, PowerPC), 64-bit (x86-64 and PPC-64), or both. "
"(Contributed by Ronald Oussoren.)"
msgstr ""
"En Mac OS X, Python 2.6 puede ser compilado como una construcción universal "
"de 4 vías. El script :program:`configure` puede tomar una opción :`!--with-"
"universal-archs=[32-bit|64-bit|all]`, controlando si los binarios se "
"construyen para arquitecturas de 32 bits (x86, PowerPC), 64 bits (x86-64 y "
"PPC-64), o ambas. (Contribución de Ronald Oussoren)"
#: ../Doc/whatsnew/2.6.rst:3000
msgid ""
"The BerkeleyDB module now has a C API object, available as ``bsddb.db."
"api``. This object can be used by other C extensions that wish to use the :"
"mod:`bsddb` module for their own purposes. (Contributed by Duncan Grisby.)"
msgstr ""
"El módulo BerkeleyDB tiene ahora un objeto C API, disponible como ``bsddb.db."
"api``. Este objeto puede ser utilizado por otras extensiones de C que "
"deseen utilizar el módulo :mod:`bsddb` para sus propios fines. (Contribución "
"de Duncan Grisby)"
#: ../Doc/whatsnew/2.6.rst:3005
msgid ""
"The new buffer interface, previously described in `the PEP 3118 section "
"<#pep-3118-revised-buffer-protocol>`__, adds :c:func:`PyObject_GetBuffer` "
"and :c:func:`PyBuffer_Release`, as well as a few other functions."
msgstr ""
"La nueva interfaz del buffer, descrita previamente en `la sección PEP 3118 "
"<#pep-3118-revised-buffer-protocol>`__, añade :c:func:`PyObject_GetBuffer` "
"y :c:func:`PyBuffer_Release`, así como algunas otras funciones."
#: ../Doc/whatsnew/2.6.rst:3010
msgid ""
"Python's use of the C stdio library is now thread-safe, or at least as "
"thread-safe as the underlying library is. A long-standing potential bug "
"occurred if one thread closed a file object while another thread was reading "
"from or writing to the object. In 2.6 file objects have a reference count, "
"manipulated by the :c:func:`!PyFile_IncUseCount` and :c:func:`!"
"PyFile_DecUseCount` functions. File objects can't be closed unless the "
"reference count is zero. :c:func:`!PyFile_IncUseCount` should be called "
"while the GIL is still held, before carrying out an I/O operation using the "
"``FILE *`` pointer, and :c:func:`!PyFile_DecUseCount` should be called "
"immediately after the GIL is re-acquired. (Contributed by Antoine Pitrou and "
"Gregory P. Smith.)"
msgstr ""
"El uso que hace Python de la biblioteca stdio de C es ahora seguro para los "
"hilos, o al menos tan seguro como la biblioteca subyacente. Un error "
"potencial de larga data ocurría si un hilo cerraba un objeto de archivo "
"mientras otro hilo estaba leyendo o escribiendo en el objeto. En la versión "
"2.6 los objetos archivo tienen un contador de referencias, manipulado por "
"las funciones :c:func:`!PyFile_IncUseCount` y :c:func:`!"
"PyFile_DecUseCount`. Los objetos de archivo no pueden cerrarse a menos que "
"el recuento de referencias sea cero. :c:func:`!PyFile_IncUseCount` debe "
"llamarse mientras se mantiene el GIL, antes de realizar una operación de E/S "
"utilizando el puntero ``FILE *``, y :c:func:`!PyFile_DecUseCount` debe "
"llamarse inmediatamente después de recuperar el GIL. (Contribución de "
"Antoine Pitrou y Gregory P. Smith)"
#: ../Doc/whatsnew/2.6.rst:3023
msgid ""
"Importing modules simultaneously in two different threads no longer "
"deadlocks; it will now raise an :exc:`ImportError`. A new API function, :c:"
"func:`PyImport_ImportModuleNoBlock`, will look for a module in ``sys."
"modules`` first, then try to import it after acquiring an import lock. If "
"the import lock is held by another thread, an :exc:`ImportError` is raised. "
"(Contributed by Christian Heimes.)"
msgstr ""
"Importar módulos simultáneamente en dos hilos diferentes ya no se bloquea; "
"ahora lanzará un :exc:`ImportError`. Una nueva función de la API, :c:func:"
"`PyImport_ImportModuleNoBlock`, buscará un módulo en ``sys.modules`` "
"primero, y luego intentará importarlo después de adquirir un bloqueo de "
"importación. Si el bloqueo de importación está en manos de otro hilo, se "
"genera un :exc:`ImportError`. (Contribuido por Christian Heimes.)"
#: ../Doc/whatsnew/2.6.rst:3031
msgid ""
"Several functions return information about the platform's floating-point "
"support. :c:func:`PyFloat_GetMax` returns the maximum representable "
"floating point value, and :c:func:`PyFloat_GetMin` returns the minimum "
"positive value. :c:func:`PyFloat_GetInfo` returns an object containing more "
"information from the :file:`float.h` file, such as ``\"mant_dig\"`` (number "
"of digits in the mantissa), ``\"epsilon\"`` (smallest difference between 1.0 "
"and the next largest value representable), and several others. (Contributed "
"by Christian Heimes; :issue:`1534`.)"
msgstr ""
"Varias funciones devuelven información sobre el soporte de punto flotante de "
"la plataforma. :c:func:`PyFloat_GetMax` devuelve el máximo valor de punto "
"flotante representable, y :c:func:`PyFloat_GetMin` devuelve el mínimo valor "
"positivo. :c:func:`PyFloat_GetInfo` devuelve un objeto que contiene más "
"información del fichero :file:`float.h`, como ``\"mant_dig\"`` (número de "
"dígitos en la mantisa), ``\"epsilon\"`` (diferencia más pequeña entre 1.0 y "
"el siguiente valor más grande representable), y varios otros. (Contribución "
"de Christian Heimes; :issue:`1534`.)"
#: ../Doc/whatsnew/2.6.rst:3042
msgid ""
"C functions and methods that use :c:func:`PyComplex_AsCComplex` will now "
"accept arguments that have a :meth:`__complex__` method. In particular, the "
"functions in the :mod:`cmath` module will now accept objects with this "
"method. This is a backport of a Python 3.0 change. (Contributed by Mark "
"Dickinson; :issue:`1675423`.)"
msgstr ""
"Las funciones y métodos de C que utilizan :c:func:`PyComplex_AsCComplex` "
"ahora aceptarán argumentos que tengan un método :meth:`__complex__`. En "
"particular, las funciones del módulo :mod:`cmath` ahora aceptarán objetos "
"con este método. Este es un retroceso de un cambio en Python 3.0. "
"(Contribuido por Mark Dickinson; :issue:`1675423`.)"
#: ../Doc/whatsnew/2.6.rst:3049
msgid ""
"Python's C API now includes two functions for case-insensitive string "
"comparisons, ``PyOS_stricmp(char*, char*)`` and ``PyOS_strnicmp(char*, "
"char*, Py_ssize_t)``. (Contributed by Christian Heimes; :issue:`1635`.)"
msgstr ""
"La API de C de Python incluye ahora dos funciones para comparar cadenas sin "
"distinción de mayúsculas y minúsculas, ``PyOS_stricmp(char*, char*)`` y "
"``PyOS_strnicmp(char*, char*, Py_ssize_t)``. (Contribución de Christian "
"Heimes; :issue:`1635`.)"
#: ../Doc/whatsnew/2.6.rst:3054
msgid ""
"Many C extensions define their own little macro for adding integers and "
"strings to the module's dictionary in the ``init*`` function. Python 2.6 "
"finally defines standard macros for adding values to a module, :c:macro:"
"`PyModule_AddStringMacro` and :c:macro:`PyModule_AddIntMacro()`. "
"(Contributed by Christian Heimes.)"
msgstr ""
"Muchas extensiones de C definen su propia macro para añadir enteros y "
"cadenas al diccionario del módulo en la función ``init*``. Python 2.6 "
"finalmente define macros estándar para añadir valores a un módulo, :c:macro:"
"`PyModule_AddStringMacro` y :c:macro:`PyModule_AddIntMacro()`. "
"(Contribución de Christian Heimes.)"
#: ../Doc/whatsnew/2.6.rst:3061
msgid ""
"Some macros were renamed in both 3.0 and 2.6 to make it clearer that they "
"are macros, not functions. :c:macro:`!Py_Size()` became :c:macro:"
"`Py_SIZE()`, :c:macro:`!Py_Type()` became :c:macro:`Py_TYPE()`, and :c:macro:"
"`!Py_Refcnt()` became :c:macro:`Py_REFCNT()`. The mixed-case macros are "
"still available in Python 2.6 for backward compatibility. (:issue:`1629`)"
msgstr ""
"Algunas macros han sido renombradas tanto en la 3.0 como en la 2.6 para "
"dejar más claro que son macros y no funciones. :c:macro:`!Py_Size()` se "
"convierte en :c:macro:`Py_SIZE()`, :c:macro:`!Py_Type()` se convierte en :c:"
"macro:`Py_TYPE()`, y :c:macro:`!Py_Refcnt()` se convierte en :c:macro:"
"`Py_REFCNT()`. Las macros de mayúsculas y minúsculas siguen estando "
"disponibles en Python 2.6 por compatibilidad con versiones anteriores. (:"
"issue:`1629`)"
#: ../Doc/whatsnew/2.6.rst:3070
msgid ""
"Distutils now places C extensions it builds in a different directory when "
"running on a debug version of Python. (Contributed by Collin Winter; :issue:"
"`1530959`.)"
msgstr ""
"Distutils ahora coloca las extensiones C que construye en un directorio "
"diferente cuando se ejecuta en una versión de depuración de Python. "
"(Contribución de Collin Winter; :issue:`1530959`.)"
#: ../Doc/whatsnew/2.6.rst:3074
msgid ""
"Several basic data types, such as integers and strings, maintain internal "
"free lists of objects that can be re-used. The data structures for these "
"free lists now follow a naming convention: the variable is always named "
"``free_list``, the counter is always named ``numfree``, and a macro "
"``Py_MAXFREELIST`` is always defined."
msgstr ""
"Varios tipos de datos básicos, como los enteros y las cadenas, mantienen "
"listas internas de objetos libres que pueden reutilizarse. Las estructuras "
"de datos para estas listas libres siguen ahora una convención de "
"nomenclatura: la variable se llama siempre ``free_list``, el contador se "
"llama siempre ``numfree``, y siempre se define una macro "
"``Py_MAXFREELIST``"
#: ../Doc/whatsnew/2.6.rst:3081
msgid ""
"A new Makefile target, \"make patchcheck\", prepares the Python source tree "
"for making a patch: it fixes trailing whitespace in all modified ``.py`` "
"files, checks whether the documentation has been changed, and reports "
"whether the :file:`Misc/ACKS` and :file:`Misc/NEWS` files have been updated. "
"(Contributed by Brett Cannon.)"
msgstr ""
"Un nuevo objetivo de Makefile, \"make patchcheck\", prepara el árbol de "
"fuentes de Python para hacer un parche: corrige los espacios en blanco al "
"final de todos los archivos ``.py`` modificados, comprueba si la "
"documentación ha sido cambiada, e informa si los archivos :file:`Misc/ACKS` "
"y :file:`Misc/NEWS` han sido actualizados. (Contribuido por Brett Cannon.)"
#: ../Doc/whatsnew/2.6.rst:3088
msgid ""
"Another new target, \"make profile-opt\", compiles a Python binary using "
"GCC's profile-guided optimization. It compiles Python with profiling "
"enabled, runs the test suite to obtain a set of profiling results, and then "
"compiles using these results for optimization. (Contributed by Gregory P. "
"Smith.)"
msgstr ""
"Otro nuevo objetivo, \"make profile-opt\", compila un binario de Python "
"utilizando la optimización guiada por perfiles de GCC. Compila Python con "
"el perfil habilitado, ejecuta el conjunto de pruebas para obtener un "
"conjunto de resultados de perfil, y luego compila usando estos resultados "
"para la optimización. (Contribución de Gregory P. Smith)"
#: ../Doc/whatsnew/2.6.rst:3097
msgid "Port-Specific Changes: Windows"
msgstr "Cambios específicos en los puertos: Windows"
#: ../Doc/whatsnew/2.6.rst:3099
msgid ""
"The support for Windows 95, 98, ME and NT4 has been dropped. Python 2.6 "
"requires at least Windows 2000 SP4."
msgstr ""
"Se ha eliminado el soporte para Windows 95, 98, ME y NT4. Python 2.6 "
"requiere al menos Windows 2000 SP4."
#: ../Doc/whatsnew/2.6.rst:3102
#, python-format
msgid ""
"The new default compiler on Windows is Visual Studio 2008 (version 9.0). The "
"build directories for Visual Studio 2003 (version 7.1) and 2005 (version "
"8.0) were moved into the PC/ directory. The new :file:`PCbuild` directory "
"supports cross compilation for X64, debug builds and Profile Guided "
"Optimization (PGO). PGO builds are roughly 10% faster than normal builds. "
"(Contributed by Christian Heimes with help from Amaury Forgeot d'Arc and "
"Martin von Löwis.)"
msgstr ""
"El nuevo compilador por defecto en Windows es Visual Studio 2008 (versión "
"9.0). Los directorios de compilación para Visual Studio 2003 (versión 7.1) y "
"2005 (versión 8.0) se han trasladado al directorio PC/. El nuevo directorio :"
"file:`PCbuild` admite la compilación cruzada para X64, las compilaciones de "
"depuración y la optimización guiada por perfil (PGO). Las compilaciones PGO "
"son aproximadamente un 10% f más rápidas que las normales. (Contribuido por "
"Christian Heimes con la ayuda de Amaury Forgeot d'Arc y Martin von Löwis)"
#: ../Doc/whatsnew/2.6.rst:3110
msgid ""
"The :mod:`msvcrt` module now supports both the normal and wide char variants "
"of the console I/O API. The :func:`getwch` function reads a keypress and "
"returns a Unicode value, as does the :func:`getwche` function. The :func:"
"`putwch` function takes a Unicode character and writes it to the console. "
"(Contributed by Christian Heimes.)"
msgstr ""
"El módulo :mod:`msvcrt` soporta ahora las variantes normal y wide char de la "
"API de E/S de la consola. La función :func:`getwch` lee una pulsación de "
"tecla y devuelve un valor Unicode, al igual que la función :func:`getwche`. "
"La función :func:`putwch` toma un carácter Unicode y lo escribe en la "
"consola. (Contribución de Christian Heimes)"
#: ../Doc/whatsnew/2.6.rst:3117
msgid ""
":func:`os.path.expandvars` will now expand environment variables in the form "
"\"%var%\", and \"~user\" will be expanded into the user's home directory "
"path. (Contributed by Josiah Carlson; :issue:`957650`.)"
msgstr ""
":func:`os.path.expandvars` ahora expandirá las variables de entorno de la "
"forma \"%var%\", y \"~user\" se expandirá en la ruta del directorio personal "
"del usuario. (Contribución de Josiah Carlson; :issue:`957650`.)"
#: ../Doc/whatsnew/2.6.rst:3121
msgid ""
"The :mod:`socket` module's socket objects now have an :meth:`ioctl` method "
"that provides a limited interface to the :c:func:`WSAIoctl` system interface."
msgstr ""
"Los objetos socket del módulo :mod:`socket` tienen ahora un método :meth:"
"`ioctl` que proporciona una interfaz limitada a la interfaz del sistema :c:"
"func:`WSAIoctl`."
#: ../Doc/whatsnew/2.6.rst:3125
msgid ""
"The :mod:`_winreg` module now has a function, :func:"
"`ExpandEnvironmentStrings`, that expands environment variable references "
"such as ``%NAME%`` in an input string. The handle objects provided by this "
"module now support the context protocol, so they can be used in :keyword:"
"`with` statements. (Contributed by Christian Heimes.)"
msgstr ""
"El módulo :mod:`_winreg` tiene ahora una función, :func:"
"`ExpandEnvironmentStrings`, que expande las referencias a variables de "
"entorno como ``%NAME%`` en una cadena de entrada. Los objetos handle "
"proporcionados por este módulo ahora soportan el protocolo de contexto, por "
"lo que pueden ser utilizados en sentencias :keyword:`with`. (Contribuido por "
"Christian Heimes.)"
#: ../Doc/whatsnew/2.6.rst:3132
msgid ""
":mod:`_winreg` also has better support for x64 systems, exposing the :func:"
"`DisableReflectionKey`, :func:`EnableReflectionKey`, and :func:"
"`QueryReflectionKey` functions, which enable and disable registry reflection "
"for 32-bit processes running on 64-bit systems. (:issue:`1753245`)"
msgstr ""
":mod:`_winreg` también tiene un mejor soporte para los sistemas x64, "
"exponiendo las funciones :func:`DisableReflectionKey`, :func:"
"`EnableReflectionKey`, y :func:`QueryReflectionKey`, que habilitan y "
"deshabilitan la reflexión del registro para los procesos de 32 bits que se "
"ejecutan en sistemas de 64 bits. (:issue:`1753245`)"
#: ../Doc/whatsnew/2.6.rst:3138
msgid ""
"The :mod:`msilib` module's :class:`Record` object gained :meth:`GetInteger` "
"and :meth:`GetString` methods that return field values as an integer or a "
"string. (Contributed by Floris Bruynooghe; :issue:`2125`.)"
msgstr ""
"El objeto :class:`Record` del módulo :mod:`msilib` ha ganado los métodos :"
"meth:`GetInteger` y :meth:`GetString` que devuelven los valores de los "
"campos como un entero o una cadena. (Contribución de Floris Bruynooghe; :"
"issue:`2125`.)"
#: ../Doc/whatsnew/2.6.rst:3146
msgid "Port-Specific Changes: Mac OS X"
msgstr "Cambios específicos en los puertos: Mac OS X"
#: ../Doc/whatsnew/2.6.rst:3148
msgid ""
"When compiling a framework build of Python, you can now specify the "
"framework name to be used by providing the :option:`!--with-framework-name=` "
"option to the :program:`configure` script."
msgstr ""
"Cuando se compila una estructura de Python, ahora se puede especificar el "
"nombre de la estructura que se utilizará proporcionando la opción :option:"
"`!--with-framework-name=` al script :program:`configure`."
#: ../Doc/whatsnew/2.6.rst:3153
msgid ""
"The :mod:`macfs` module has been removed. This in turn required the :func:"
"`macostools.touched` function to be removed because it depended on the :mod:"
"`macfs` module. (:issue:`1490190`)"
msgstr ""
"Se ha eliminado el módulo :mod:`macfs`. Esto, a su vez, ha requerido la "
"eliminación de la función :func:`macostools.touched` porque dependía del "
"módulo :mod:`macfs`. (:issue:`1490190`)"
#: ../Doc/whatsnew/2.6.rst:3157
msgid ""
"Many other Mac OS modules have been deprecated and will be removed in Python "
"3.0: :mod:`_builtinSuites`, :mod:`aepack`, :mod:`aetools`, :mod:`aetypes`, :"
"mod:`applesingle`, :mod:`appletrawmain`, :mod:`appletrunner`, :mod:"
"`argvemulator`, :mod:`Audio_mac`, :mod:`autoGIL`, :mod:`Carbon`, :mod:"
"`cfmfile`, :mod:`CodeWarrior`, :mod:`ColorPicker`, :mod:`EasyDialogs`, :mod:"
"`Explorer`, :mod:`Finder`, :mod:`FrameWork`, :mod:`findertools`, :mod:`ic`, :"
"mod:`icglue`, :mod:`icopen`, :mod:`macerrors`, :mod:`MacOS`, :mod:`macfs`, :"
"mod:`macostools`, :mod:`macresource`, :mod:`MiniAEFrame`, :mod:`Nav`, :mod:"
"`Netscape`, :mod:`OSATerminology`, :mod:`pimp`, :mod:`PixMapWrapper`, :mod:"
"`StdSuites`, :mod:`SystemEvents`, :mod:`Terminal`, and :mod:"
"`terminalcommand`."
msgstr ""
"Muchos otros módulos de Mac OS han quedado obsoletos y serán eliminados en "
"Python 3.0: :mod:`_builtinSuites`, :mod:`aepack`, :mod:`aetools`, :mod:"
"`aetypes`, :mod:`applesingle`, :mod:`appletrawmain`, :mod:`appletrunner`, :"
"mod:`argvemulator`, :mod:`Audio_mac`, :mod:`autoGIL`, :mod:`Carbon`, :mod:"
"`cfmfile`, :mod:`CodeWarrior`, :mod:`ColorPicker`, :mod:`EasyDialogs`, :mod:"
"`Explorer`, :mod:`Finder`, :mod:`FrameWork`, :mod:`findertools`, :mod:`ic`, :"
"mod:`icglue`, :mod:`icopen`, :mod:`macerrors`, :mod:`MacOS`, :mod:`macfs`, :"
"mod:`macostools`, :mod:`macresource`, :mod:`MiniAEFrame`, :mod:`Nav`, :mod:"
"`Netscape`, :mod:`OSATerminology`, :mod:`pimp`, :mod:`PixMapWrapper`, :mod:"
"`StdSuites`, :mod:`SystemEvents`, :mod:`Terminal`, y :mod:`terminalcommand`."
#: ../Doc/whatsnew/2.6.rst:3200
msgid "Port-Specific Changes: IRIX"
msgstr "Cambios específicos en los puertos: IRIX"
#: ../Doc/whatsnew/2.6.rst:3202
msgid ""
"A number of old IRIX-specific modules were deprecated and will be removed in "
"Python 3.0: :mod:`al` and :mod:`AL`, :mod:`cd`, :mod:`cddb`, :mod:"
"`cdplayer`, :mod:`CL` and :mod:`cl`, :mod:`DEVICE`, :mod:`ERRNO`, :mod:"
"`FILE`, :mod:`FL` and :mod:`fl`, :mod:`flp`, :mod:`fm`, :mod:`GET`, :mod:"
"`GLWS`, :mod:`GL` and :mod:`gl`, :mod:`IN`, :mod:`IOCTL`, :mod:`jpeg`, :mod:"
"`panelparser`, :mod:`readcd`, :mod:`SV` and :mod:`sv`, :mod:`torgb`, :mod:"
"`videoreader`, and :mod:`WAIT`."
msgstr ""
"Una serie de antiguos módulos específicos de IRIX fueron obsoletos y serán "
"eliminados en Python 3.0: :mod:`al` y :mod:`AL`, :mod:`cd`, :mod:`cddb`, :"
"mod:`cdplayer`, :mod:`CL` y :mod:`cl`, :mod:`DEVICE`, :mod:`ERRNO`, :mod:"
"`FILE`, :mod:`FL` y :mod:`fl`, :mod:`flp`, :mod:`fm`, :mod:`GET`, :mod:"
"`GLWS`, :mod:`GL` y :mod:`gl`, :mod:`IN`, :mod:`IOCTL`, :mod:`jpeg`, :mod:"
"`panelparser`, :mod:`readcd`, :mod:`SV` y :mod:`sv`, :mod:`torgb`, :mod:"
"`videoreader` y :mod:`WAIT`."
#: ../Doc/whatsnew/2.6.rst:3232
msgid "Porting to Python 2.6"
msgstr "Adaptación a Python 2.6"
#: ../Doc/whatsnew/2.6.rst:3234
msgid ""
"This section lists previously described changes and other bugfixes that may "
"require changes to your code:"
msgstr ""
"Esta sección enumera los cambios descritos anteriormente y otras "
"correcciones de errores que pueden requerir cambios en su código:"
#: ../Doc/whatsnew/2.6.rst:3237
msgid ""
"Classes that aren't supposed to be hashable should set ``__hash__ = None`` "
"in their definitions to indicate the fact."
msgstr ""
"Las clases que no se supone que son hashable deben establecer ``__hash__ = "
"None`` en sus definiciones para indicar el hecho."
#: ../Doc/whatsnew/2.6.rst:3244
msgid ""
"The :meth:`__init__` method of :class:`collections.deque` now clears any "
"existing contents of the deque before adding elements from the iterable. "
"This change makes the behavior match ``list.__init__()``."
msgstr ""
"El método :meth:`__init__` de :class:`collections.deque` ahora borra "
"cualquier contenido existente del deque antes de añadir elementos del "
"iterable. Este cambio hace que el comportamiento coincida con ``list."
"__init__()``."
#: ../Doc/whatsnew/2.6.rst:3249
msgid ""
":meth:`object.__init__` previously accepted arbitrary arguments and keyword "
"arguments, ignoring them. In Python 2.6, this is no longer allowed and will "
"result in a :exc:`TypeError`. This will affect :meth:`__init__` methods "
"that end up calling the corresponding method on :class:`object` (perhaps "
"through using :func:`super`). See :issue:`1683368` for discussion."
msgstr ""
":meth:`object.__init__` anteriormente aceptaba argumentos arbitrarios y "
"argumentos de palabras clave, ignorándolos. En Python 2.6, esto ya no está "
"permitido y resultará en un :exc:`TypeError`. Esto afectará a los métodos :"
"meth:`__init__` que acaben llamando al método correspondiente en :class:"
"`object` (quizás mediante el uso de :func:`super`). Ver :issue:`1683368` "
"para su discusión."
#: ../Doc/whatsnew/2.6.rst:3256
msgid ""
"The :class:`Decimal` constructor now accepts leading and trailing whitespace "
"when passed a string. Previously it would raise an :exc:`InvalidOperation` "
"exception. On the other hand, the :meth:`create_decimal` method of :class:"
"`Context` objects now explicitly disallows extra whitespace, raising a :exc:"
"`ConversionSyntax` exception."
msgstr ""
"El constructor :class:`Decimal` ahora acepta los espacios en blanco "
"iniciales y finales cuando se le pasa una cadena. Antes lanzaba una "
"excepción :exc:`InvalidOperation`. Por otro lado, el método :meth:"
"`create_decimal` de los objetos :class:`Context` ahora desestima "
"explícitamente los espacios en blanco adicionales, lanzando una excepción :"
"exc:`ConversionSyntax`."
#: ../Doc/whatsnew/2.6.rst:3263
msgid ""
"Due to an implementation accident, if you passed a file path to the built-"
"in :func:`__import__` function, it would actually import the specified "
"file. This was never intended to work, however, and the implementation now "
"explicitly checks for this case and raises an :exc:`ImportError`."
msgstr ""
"Debido a un accidente de implementación, si se pasaba una ruta de archivo a "
"la función incorporada :func:`__import__`, ésta importaría realmente el "
"archivo especificado. Sin embargo, nunca se pretendió que esto funcionara, "
"y la implementación ahora comprueba explícitamente este caso y lanza un :exc:"
"`ImportError`."
#: ../Doc/whatsnew/2.6.rst:3269
msgid ""
"C API: the :c:func:`PyImport_Import` and :c:func:`PyImport_ImportModule` "
"functions now default to absolute imports, not relative imports. This will "
"affect C extensions that import other modules."
msgstr ""
"API C: las funciones :c:func:`PyImport_Import` y :c:func:"
"`PyImport_ImportModule` ahora se ajustan por defecto a importaciones "
"absolutas, no a importaciones relativas. Esto afectará a las extensiones de "
"C que importen otros módulos."
#: ../Doc/whatsnew/2.6.rst:3273
msgid ""
"C API: extension data types that shouldn't be hashable should define their "
"``tp_hash`` slot to :c:func:`PyObject_HashNotImplemented`."
msgstr ""
"API C: los tipos de datos de extensión que no deben ser hashable deben "
"definir su ranura ``tp_hash`` a :c:func:`PyObject_HashNotImplemented`."
#: ../Doc/whatsnew/2.6.rst:3277
msgid ""
"The :mod:`socket` module exception :exc:`socket.error` now inherits from :"
"exc:`IOError`. Previously it wasn't a subclass of :exc:`StandardError` but "
"now it is, through :exc:`IOError`. (Implemented by Gregory P. Smith; :issue:"
"`1706815`.)"
msgstr ""
"La excepción del módulo :mod:`socket` :exc:`socket.error` ahora hereda de :"
"exc:`IOError`. Anteriormente no era una subclase de :exc:`StandardError` "
"pero ahora lo es, a través de :exc:`IOError`. (Implementado por Gregory P. "
"Smith; :issue:`1706815`.)"
#: ../Doc/whatsnew/2.6.rst:3282
msgid ""
"The :mod:`xmlrpclib` module no longer automatically converts :class:"
"`datetime.date` and :class:`datetime.time` to the :class:`xmlrpclib."
"DateTime` type; the conversion semantics were not necessarily correct for "
"all applications. Code using :mod:`xmlrpclib` should convert :class:`date` "
"and :class:`~datetime.time` instances. (:issue:`1330538`)"
msgstr ""
"El módulo :mod:`xmlrpclib` ya no convierte automáticamente las instancias :"
"class:`datetime.date` y :class:`datetime.time` al tipo :class:`xmlrpclib."
"DateTime`; la semántica de conversión no era necesariamente correcta para "
"todas las aplicaciones. El código que utiliza :mod:`xmlrpclib` debe "
"convertir las instancias :class:`date` y :class:`~datetime.time`. (:issue:"
"`1330538`)"
#: ../Doc/whatsnew/2.6.rst:3289
msgid ""
"(3.0-warning mode) The :class:`Exception` class now warns when accessed "
"using slicing or index access; having :class:`Exception` behave like a tuple "
"is being phased out."
msgstr ""
"(Modo de advertencia 3.0) La clase :class:`Exception` ahora advierte cuando "
"se accede utilizando el acceso a la rebanada o al índice; tener :class:"
"`Exception` se comporta como una tupla está siendo eliminado."
#: ../Doc/whatsnew/2.6.rst:3293
msgid ""
"(3.0-warning mode) inequality comparisons between two dictionaries or two "
"objects that don't implement comparison methods are reported as warnings. "
"``dict1 == dict2`` still works, but ``dict1 < dict2`` is being phased out."
msgstr ""
"(modo de advertencia 3.0) las comparaciones de desigualdad entre dos "
"diccionarios o dos objetos que no implementan métodos de comparación se "
"reportan como advertencias. ``dict1 == dict2`` sigue funcionando, pero "
"``dict1 < dict2`` está siendo eliminado."
#: ../Doc/whatsnew/2.6.rst:3298
msgid ""
"Comparisons between cells, which are an implementation detail of Python's "
"scoping rules, also cause warnings because such comparisons are forbidden "
"entirely in 3.0."
msgstr ""
"Las comparaciones entre celdas, que son un detalle de implementación de las "
"reglas de alcance de Python, también causan advertencias porque tales "
"comparaciones están prohibidas por completo en 3.0."
#: ../Doc/whatsnew/2.6.rst:3308
msgid "Acknowledgements"
msgstr "Agradecimientos"
#: ../Doc/whatsnew/2.6.rst:3310
msgid ""
"The author would like to thank the following people for offering "
"suggestions, corrections and assistance with various drafts of this article: "
"Georg Brandl, Steve Brown, Nick Coghlan, Ralph Corderoy, Jim Jewett, Kent "
"Johnson, Chris Lambacher, Martin Michlmayr, Antoine Pitrou, Brian Warner."
msgstr ""
"El autor desea agradecer a las siguientes personas sus sugerencias, "
"correcciones y ayuda en varios borradores de este artículo: Georg Brandl, "
"Steve Brown, Nick Coghlan, Ralph Corderoy, Jim Jewett, Kent Johnson, Chris "
"Lambacher, Martin Michlmayr, Antoine Pitrou, Brian Warner."
#: ../Doc/whatsnew/2.6.rst:1072
msgid "universal newlines"
msgstr "nuevas líneas universales"
#: ../Doc/whatsnew/2.6.rst:1072
msgid "What's new"
msgstr "Qué hay de nuevo"