File tree Expand file tree Collapse file tree 1 file changed +78
-0
lines changed
Roadmap/07 - PILAS Y COLAS/python Expand file tree Collapse file tree 1 file changed +78
-0
lines changed Original file line number Diff line number Diff line change
1
+ #Pila (LIFO)
2
+
3
+ stack = []
4
+ stack .append ("1" )
5
+ stack .append ("2" )
6
+ stack .append ("3" )
7
+ print (stack ) #Inicializamos la pila
8
+
9
+ stack .pop () #Sacar un item de la pila (el último que se añadió)
10
+ print (stack )
11
+
12
+ #Cola (FIFO)
13
+
14
+ queue = []
15
+ queue .append ("1" )
16
+ queue .append ("2" )
17
+ queue .append ("3" )
18
+ print (queue ) #Iniciar la cola
19
+
20
+ queue .pop (0 ) #Sacar un item de la cola (el primero que se añadió)
21
+ print (queue )
22
+
23
+
24
+ #EJERCICIO EXTRA
25
+
26
+ def web_navegation ():
27
+
28
+ stack = []
29
+
30
+ while True :
31
+
32
+ action = input ("Añade una url o interactúa con palabras adelante/atras/salir: " )
33
+
34
+ match action :
35
+ case "adelante" :
36
+ #Como la página web no es una pila, entonces no hay operacion de adelante
37
+ pass
38
+ case "atras" :
39
+ if (len (stack ) > 0 ):
40
+ stack .pop ()
41
+ else :
42
+ print ("Añade una URL para poder navegar" )
43
+ case "salir" :
44
+ print ("Hasta la próxima" )
45
+ break
46
+ case _:
47
+ stack .append (action )
48
+
49
+ if len (stack ) > 0 :
50
+ print ("Estas en la web " + stack [len (stack )- 1 ])
51
+ else :
52
+ print ("Estas en la página de inicio" )
53
+
54
+ web_navegation ()
55
+
56
+
57
+ def printer ():
58
+
59
+ queue = []
60
+
61
+ while True :
62
+
63
+ action = input ("Añade un documento o interactúa con palabras imprimir/salir: " )
64
+
65
+ match action :
66
+ case "imprimir" :
67
+ if len (queue ) > 0 :
68
+ print (f"Imprimiendo: { queue .pop (0 )} " )
69
+ else :
70
+ print ("No hay documentos en la impresora" )
71
+ case "salir" :
72
+ print ("Hasta la próxima" )
73
+ break
74
+ case _:
75
+ queue .append (action )
76
+ print ("Documento añadido" )
77
+
78
+ printer ()
You can’t perform that action at this time.
0 commit comments