Commit 7e3113ff authored by Esteban Manchado Velázquez's avatar Esteban Manchado Velázquez Committed by Ekaitz

Corrections in chapter 04

parent f5e0f9a3
......@@ -90,7 +90,7 @@ otras funciones.
Por ejemplo:
``` python
>>> def filtra_lista( lista ):
>>> def filtra_lista(list):
... def mayor_que_4(a):
... return a > 4
... return list( filter(mayor_que_4, lista) )
......@@ -117,9 +117,9 @@ oficial de python las define como funciones para vagos.
La sintaxis de una función lambda te la enseño con un ejemplo:
``` python
>>> lambda x, y: x+y
>>> lambda x,y: x + y
<function <lambda> at 0x7f035b879950>
>>> (lambda x, y: x+y)(1,2)
>>> (lambda x,y: x + y)(1,2)
3
```
......@@ -147,7 +147,7 @@ utilizarse esta vez, así que resumimos y reducimos tecleos.
De todos modos, podemos asignarlas a una referencia para poder repetir su uso:
``` python
>>> f = lambda x: x+1
>>> f = lambda x: x + 1
>>> f(1)
2
>>> f(10)
......@@ -204,17 +204,17 @@ devuelve y tiene una vida más larga que la función en la que se declaró. El
siguiente ejemplo te pone en contexto:
``` python
def create_incrementer_function( increment ):
def create_incrementer_function(increment):
def incrementer (val):
# Recuerda que esta función puede ver el valor `increment` por
# por haber nacido en un contexto superior.
return val + increment
return incrementer
increment10 = create_incrementer_function( 10 )
increment( 10 ) # Returns 20
increment1 = create_incrementer_function( 1 )
increment( 10 ) # Returns 11
increment10 = create_incrementer_function(10)
increment10(10) # Returns 20
increment1 = create_incrementer_function(1)
increment1(10) # Returns 11
```
En este ejemplo hemos creado una función que construye funciones que sirven
para incrementar valores.
......@@ -297,10 +297,10 @@ Ilustrándolo en un ejemplo:
... a = 2
... print(a)
...
>>> a
1
>>> f()
2
>>> a
1
```
Aunque el nombre de la referencia declarada en el interior sea el mismo que el
......@@ -326,7 +326,7 @@ que se altere, sino el contexto global, el padre de todos los contextos.
2
```
> NOTA: Te recomiendo, de todas formas, que no edites valores globales desde
> NOTA: Te recomiendo, de todas formas, que nunca edites valores globales desde
> el cuerpo de funciones. Es más elegante y comprensible si los efectos de las
> funciones sólo se aprecian en los argumentos de entrada y salida.
......@@ -503,7 +503,7 @@ Existe un caso en el que tienes que tener mucho cuidado. Los valores por
defecto en los argumentos con nombre se memorizan de una ejecución de la
función a otra. En caso de que sean valores inmutables no tendrás problemas,
porque su valor nunca cambiará, pero si almacenas en ellos valores mutables y
los editas, la próxima vez que ejecutes la función los valores por defecto
los modificas, la próxima vez que ejecutes la función los valores por defecto
habrán cambiado.
La razón por la que los valores por defecto se recuerdan es que esos valores se
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment