-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpracticas generadores.py
More file actions
68 lines (40 loc) · 1.25 KB
/
practicas generadores.py
File metadata and controls
68 lines (40 loc) · 1.25 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
# generar numeros pares
def generapares(limite):
num=1
milista=[]
while num<limite:
milista.append(num*2)
num=num+1
return milista
print (generapares(10))
# otra manera
def generapares(limite):
num=1
while num<limite:
yield num*2
num=num+1
devuelvepares=generapares(10)
for i in devuelvepares:
print (i)
# devuelve ciudades, con el * puedo indicar los valores a generar
def devuelve_ciudades (*ciudades):
for elemento in ciudades:
yield elemento
ciudades_devueltas=devuelve_ciudades("Bogota", "Medellin", "Cartagena", "Barranquilla")
# con la funcion next, se van a devolver los valores 1 a 1
print(next(ciudades_devueltas))
# para ver valor Medellin
print(next(ciudades_devueltas))
# para generar los subelementos
def devuelve_ciudades (*ciudades):
# bucle for aninado
for elemento in ciudades:
for subelemento in elemento:
yield subelemento
# para abreviar el metodo anterior se podria omitir la linea for subelemento in elemento:
# y se colocaria en la linea de yield, yield from elemento
ciudades_devueltas=devuelve_ciudades("Bogota", "Medellin", "Cartagena", "Barranquilla")
# con la funcion next, se van a devolver los valores 1 a 1
print(next(ciudades_devueltas))
# para ver valor Medellin
print(next(ciudades_devueltas))