@@ -11,7 +11,7 @@ msgstr ""
11
11
"Project-Id-Version : Python 3.8\n "
12
12
"Report-Msgid-Bugs-To : \n "
13
13
"POT-Creation-Date : 2020-05-05 12:54+0200\n "
14
- "PO-Revision-Date : 2021-02-01 19:27 -0300\n "
14
+ "PO-Revision-Date : 2021-02-02 15:00 -0300\n "
15
15
"Language-Team : python-doc-es\n "
16
16
"MIME-Version : 1.0\n "
17
17
"Content-Type : text/plain; charset=UTF-8\n "
@@ -190,7 +190,7 @@ msgid ""
190
190
"execution for a second."
191
191
msgstr ""
192
192
"Algunos lenguajes son muy estrictos sobre la pureza y ni siquiera tienen "
193
- "declaraciones de asignación como ``a=3`` o ``c = a + b``, pero es difícil "
193
+ "sentencias de asignación como ``a=3`` o ``c = a + b``, pero es difícil "
194
194
"evitar todos los efectos secundarios. Imprimir en la pantalla o escribir en "
195
195
"un archivo en disco son efectos secundarios, por ejemplo. Por ejemplo, en "
196
196
"Python una llamada a la función :func:`print` o :func:`time.sleep` retorna "
@@ -241,7 +241,7 @@ msgid ""
241
241
"advantages to the functional style:"
242
242
msgstr ""
243
243
"El diseño funcional puede parecer una restricción extraña bajo la cuál "
244
- "trabajar. Por qué evitaría objetos y efectos secundarios? Hay ventajas "
244
+ "trabajar. ¿ Por qué evitaría objetos y efectos secundarios? Hay ventajas "
245
245
"teóricas y prácticas para el estilo funcional:"
246
246
247
247
#: ../Doc/howto/functional.rst:93
@@ -258,7 +258,7 @@ msgstr "Componibilidad."
258
258
259
259
#: ../Doc/howto/functional.rst:96
260
260
msgid "Ease of debugging and testing."
261
- msgstr "Fácil de depurar y probar."
261
+ msgstr "Facilidad de depurar y probar."
262
262
263
263
#: ../Doc/howto/functional.rst:100
264
264
msgid "Formal provability"
@@ -344,7 +344,7 @@ msgstr ""
344
344
345
345
#: ../Doc/howto/functional.rst:136
346
346
msgid "Modularity"
347
- msgstr ""
347
+ msgstr "Modularidad "
348
348
349
349
#: ../Doc/howto/functional.rst:138
350
350
msgid ""
@@ -354,14 +354,20 @@ msgid ""
354
354
"thing than a large function that performs a complicated transformation. "
355
355
"Small functions are also easier to read and to check for errors."
356
356
msgstr ""
357
+ "Un beneficio más práctico de la programación funcional es que fuerza a "
358
+ "romper su problema en pequeñas piezas. Como resultado los programas son más "
359
+ "modulares. Es más fácil especificar y escribir una función pequeña que hace "
360
+ "una cosa que una función grande que realiza una transformación complicada. "
361
+ "Las funciones pequeñas también son más fáciles de leer y comprobar si hay "
362
+ "errores."
357
363
358
364
#: ../Doc/howto/functional.rst:146
359
365
msgid "Ease of debugging and testing"
360
- msgstr ""
366
+ msgstr "Facilidad de depurar y probar "
361
367
362
368
#: ../Doc/howto/functional.rst:148
363
369
msgid "Testing and debugging a functional-style program is easier."
364
- msgstr ""
370
+ msgstr "Probar y depurar un programa en estilo funcional es más fácil. "
365
371
366
372
#: ../Doc/howto/functional.rst:150
367
373
msgid ""
@@ -371,6 +377,11 @@ msgid ""
371
377
"intermediate inputs and outputs to quickly isolate the function that's "
372
378
"responsible for a bug."
373
379
msgstr ""
380
+ "La depuración se simplifica porque las funciones generalmente son pequeñas y "
381
+ "claramente especificadas. Cuando un programa no funciona, cada función es un "
382
+ "punto de interfaz donde puede comprobar si los datos son correctos. Puede "
383
+ "ver las entradas y salidas intermedias para aislar rápidamente la función "
384
+ "que es responsable de un error."
374
385
375
386
#: ../Doc/howto/functional.rst:155
376
387
msgid ""
@@ -379,10 +390,15 @@ msgid ""
379
390
"before running a test; instead you only have to synthesize the right input "
380
391
"and then check that the output matches expectations."
381
392
msgstr ""
393
+ "Las pruebas son más fáciles porque cada función es un sujeto potencial para "
394
+ "una prueba unitaria. Las funciones no dependen de un estado del sistema que "
395
+ "necesite ser replicado antes de correr una prueba; en lugar de eso solo "
396
+ "tiene que sintetizar la entrada correcta y comprobar que la salida coincida "
397
+ "con las expectativas."
382
398
383
399
#: ../Doc/howto/functional.rst:162
384
400
msgid "Composability"
385
- msgstr ""
401
+ msgstr "Componibilidad "
386
402
387
403
#: ../Doc/howto/functional.rst:164
388
404
msgid ""
@@ -394,23 +410,36 @@ msgid ""
394
410
"that takes a filename and returns its contents, can be applied to many "
395
411
"different situations."
396
412
msgstr ""
413
+ "Mientras trabaja en un programa en estilo funcional, escribirá un número de "
414
+ "funciones con diferentes entradas y salidas. Algunas de estas funciones "
415
+ "inevitablemente estarán especializadas en una aplicación en particular, pero "
416
+ "otras serán útiles en una amplia variedad de programas. Por ejemplo, una "
417
+ "función que recibe la ruta de un directorio y retorna todos los archivos XML "
418
+ "en el directorio, o una función que recibe el nombre de un archivo y retorna "
419
+ "su contenido, se puede aplicar a muchas situaciones diferentes."
397
420
398
421
#: ../Doc/howto/functional.rst:171
399
422
msgid ""
400
423
"Over time you'll form a personal library of utilities. Often you'll "
401
424
"assemble new programs by arranging existing functions in a new configuration "
402
425
"and writing a few functions specialized for the current task."
403
426
msgstr ""
427
+ "Con el tiempo formará una librería personal de utilidades. A menudo "
428
+ "ensamblará nuevos programas organizando funciones existentes en una nueva "
429
+ "configuración y escribiendo unas pocas funciones especializadas para la "
430
+ "tarea actual."
404
431
405
432
#: ../Doc/howto/functional.rst:179
406
433
msgid "Iterators"
407
- msgstr ""
434
+ msgstr "Iteradores "
408
435
409
436
#: ../Doc/howto/functional.rst:181
410
437
msgid ""
411
438
"I'll start by looking at a Python language feature that's an important "
412
439
"foundation for writing functional-style programs: iterators."
413
440
msgstr ""
441
+ "Comenzaré viendo una característica del lenguaje Python que es una base "
442
+ "importante para escribir programas en estilo funcional: iteradores."
414
443
415
444
#: ../Doc/howto/functional.rst:184
416
445
msgid ""
@@ -422,6 +451,14 @@ msgid ""
422
451
"exception. Iterators don't have to be finite, though; it's perfectly "
423
452
"reasonable to write an iterator that produces an infinite stream of data."
424
453
msgstr ""
454
+ "Un iterador es un objeto que representa un flujo de datos; este objeto "
455
+ "retorna los datos de a un elemento a la vez. Un iterador de Python debe "
456
+ "soportar un método llamado :meth:`~iterator.__next__` que no recibe "
457
+ "argumentos y siempre retorna el siguiente elemento en el flujo. Si no hay "
458
+ "más elementos en el flujo, :meth:`~iterator.__next__` debe lanzar la "
459
+ "excepción :exc:`StopIteration`. Los iteradores no tienen que ser finitos; es "
460
+ "perfectamente razonable escribir un iterador que produce un flujo de datos "
461
+ "infinito."
425
462
426
463
#: ../Doc/howto/functional.rst:192
427
464
msgid ""
@@ -432,10 +469,16 @@ msgid ""
432
469
"lists and dictionaries. An object is called :term:`iterable` if you can get "
433
470
"an iterator for it."
434
471
msgstr ""
472
+ "La función integrada :func:`iter` recibe un objeto arbitrario e intenta "
473
+ "retornar un iterador que retornará los contenidos o elementos del objeto, "
474
+ "lanzando :exc:`TypeError` si el objeto no soporta iteración. Muchos tipos de "
475
+ "datos integrados de Python soportan iteración, siendo los más comunes las "
476
+ "listas y los diccionarios. Un objeto se llama :term:`iterable` si puede "
477
+ "obtener un iterador para él."
435
478
436
479
#: ../Doc/howto/functional.rst:199
437
480
msgid "You can experiment with the iteration interface manually:"
438
- msgstr ""
481
+ msgstr "Puede experimentar con la interfaz de iteración manualmente: "
439
482
440
483
#: ../Doc/howto/functional.rst:217
441
484
msgid ""
@@ -444,18 +487,26 @@ msgid ""
444
487
"Y``, Y must be an iterator or some object for which :func:`iter` can create "
445
488
"an iterator. These two statements are equivalent::"
446
489
msgstr ""
490
+ "Python espera objetos iterables en muchos contextos diferentes, siendo el "
491
+ "más importante la sentencia :keyword:`for`. En la sentencia ``for X in Y``, "
492
+ "Y debe ser un iterador o algún objeto para el que :func:`iter` puede crear "
493
+ "un iterador. Estas dos sentencias son equivalentes::"
447
494
448
495
#: ../Doc/howto/functional.rst:229
449
496
msgid ""
450
497
"Iterators can be materialized as lists or tuples by using the :func:`list` "
451
498
"or :func:`tuple` constructor functions:"
452
499
msgstr ""
500
+ "Los iteradores se pueden materializar como listas o tuplas utilizando las "
501
+ "funciones constructoras :func:`list` o :func:`tuple`:"
453
502
454
503
#: ../Doc/howto/functional.rst:238
455
504
msgid ""
456
505
"Sequence unpacking also supports iterators: if you know an iterator will "
457
506
"return N elements, you can unpack them into an N-tuple:"
458
507
msgstr ""
508
+ "El desempaquetado de secuencias también soporta iteradores: si sabe que un "
509
+ "iterador retornará N elementos, puede desempaquetarlos en una N-tupla:"
459
510
460
511
#: ../Doc/howto/functional.rst:247
461
512
msgid ""
@@ -467,6 +518,14 @@ msgid ""
467
518
"func:`min` will never return, and if the element X never appears in the "
468
519
"stream, the ``\" in\" `` and ``\" not in\" `` operators won't return either."
469
520
msgstr ""
521
+ "Las funciones integradas como :func:`max` y :func:`min` pueden recibir un "
522
+ "solo iterador como argumento y retornarán el elemento más grande o más "
523
+ "pequeño. Los operadores ``\" in\" `` y ``\" not in\" `` también soportan "
524
+ "iteradores: ``X in iterator`` es verdadero si X se encuentra en el flujo que "
525
+ "retornó el iterador. Se encontrará con problemas obvios si el iterador es "
526
+ "infinito; :func:`max`, :func:`min` nunca retornarán, y si el elemento X "
527
+ "nunca aparece en el flujo, los operadores ``\" in\" `` and ``\" not in\" `` "
528
+ "tampoco retornarán."
470
529
471
530
#: ../Doc/howto/functional.rst:255
472
531
msgid ""
@@ -478,30 +537,46 @@ msgid ""
478
537
"need to do something different with the same stream, you'll have to create a "
479
538
"new iterator."
480
539
msgstr ""
540
+ "Note que solo puede ir hacia adelante en un iterador; no hay forma de "
541
+ "obtener el elemento anterior, reiniciar el iterador o hacer una copia de él. "
542
+ "Los objetos iteradores opcionalmente pueden proveer estas capacidades "
543
+ "adicionales, pero el protocolo del iterador solo especifica el método :meth:"
544
+ "`~iterator.__next__`. Por lo tanto las funciones pueden consumir toda la "
545
+ "salida del iterador, y si necesita hacer algo diferente con el mismo flujo, "
546
+ "tendrá que crear un nuevo iterador."
481
547
482
548
#: ../Doc/howto/functional.rst:265
483
549
msgid "Data Types That Support Iterators"
484
- msgstr ""
550
+ msgstr "Tipos de datos que soportan iteradores "
485
551
486
552
#: ../Doc/howto/functional.rst:267
487
553
msgid ""
488
554
"We've already seen how lists and tuples support iterators. In fact, any "
489
555
"Python sequence type, such as strings, will automatically support creation "
490
556
"of an iterator."
491
557
msgstr ""
558
+ "Ya hemos visto cómo las listas y tuplas soportan iteradores. De hecho, "
559
+ "cualquier tipo de secuencia de Python, como cadenas de caracteres, "
560
+ "automáticamente soportará la creación de un iterador."
492
561
493
562
#: ../Doc/howto/functional.rst:271
494
563
msgid ""
495
564
"Calling :func:`iter` on a dictionary returns an iterator that will loop over "
496
565
"the dictionary's keys::"
497
566
msgstr ""
567
+ "Llamar a :func:`iter` en un diccionario retornará un iterador que recorrerá "
568
+ "sobre las claves del diccionario::"
498
569
499
570
#: ../Doc/howto/functional.rst:291
500
571
msgid ""
501
572
"Note that starting with Python 3.7, dictionary iteration order is guaranteed "
502
573
"to be the same as the insertion order. In earlier versions, the behaviour "
503
574
"was unspecified and could vary between implementations."
504
575
msgstr ""
576
+ "Note que a partir de Python 3.7, se garantiza que el orden de iteración del "
577
+ "diccionario es el mismo que el orden de inserción. En versiones anteriores, "
578
+ "el comportamiento no estaba especificado y podía variar entre "
579
+ "implementaciones."
505
580
506
581
#: ../Doc/howto/functional.rst:295
507
582
msgid ""
@@ -510,25 +585,37 @@ msgid ""
510
585
"iterate over values or key/value pairs, you can explicitly call the :meth:"
511
586
"`~dict.values` or :meth:`~dict.items` methods to get an appropriate iterator."
512
587
msgstr ""
588
+ "Aplicar :func:`iter` a un diccionario siempre recorre sobre las claves, pero "
589
+ "los diccionarios tienen métodos que retornan otros iteradores. Si quiere "
590
+ "iterar sobre valores o pares clave/valor, puede explícitamente llamar a los "
591
+ "métodos :meth:`~dict.values` o :meth:`~dict.items` para obtener un iterador "
592
+ "apropiado."
513
593
514
594
#: ../Doc/howto/functional.rst:301
515
595
msgid ""
516
596
"The :func:`dict` constructor can accept an iterator that returns a finite "
517
597
"stream of ``(key, value)`` tuples:"
518
598
msgstr ""
599
+ "El constructor :func:`dict` puede aceptar un iterador que retorna un flujo "
600
+ "finito de tuplas ``(key, value)``\\ :"
519
601
520
602
#: ../Doc/howto/functional.rst:308
521
603
msgid ""
522
604
"Files also support iteration by calling the :meth:`~io.TextIOBase.readline` "
523
605
"method until there are no more lines in the file. This means you can read "
524
606
"each line of a file like this::"
525
607
msgstr ""
608
+ "Los archivos también soportan iteración llamando al método :meth:`~io."
609
+ "TextIOBase.readline` hasta que no haya más líneas en el archivo. Esto "
610
+ "significa que puede leer cada línea de un archivo de esta forma::"
526
611
527
612
#: ../Doc/howto/functional.rst:316
528
613
msgid ""
529
614
"Sets can take their contents from an iterable and let you iterate over the "
530
615
"set's elements::"
531
616
msgstr ""
617
+ "Los conjuntos pueden recibir sus contenidos de un iterable y le permiten "
618
+ "iterar sobre los elementos del conjunto::"
532
619
533
620
#: ../Doc/howto/functional.rst:326
534
621
msgid "Generator expressions and list comprehensions"
0 commit comments