Hola de nuevo...
Estudiando el tema de los nodos y sus recorridos me surgio una duda con el bucle while. Para entrar en un bucle while la condicion debe ser verdadera. Hasta ahi nada nuevo. Osea, solo que pongamos:
while 1:
pass
Entramos en el bucle. Y esto es por que 1 es True.
1 == True
True
Pero...
2 == True
False
No devuelve False ¿Entonces como es que se entra en el bucle while?
x = 0
while 2:
print('hola')
x += 1
if x == 5:
break
Con este codigo se ejecuta el bucle. Seguro que la duda es muy tonta y alguna explicacion tiene que se me ha pasado por alto.
El codigo del nodo es el tipico:
class Nodo:
def __init__(self, carga = None, prox = None):
self.carga = carga
self.prox = prox
def __str__(self):
return str(self.carga)
n4 = Nodo(4)
n3 = Nodo(3, n4)
n2 = Nodo(2, n3)
n1 = Nodo(1, n2)
def recorrer(nodo):
print(nodo)
while nodo:
print(nodo)
nodo = nodo.prox
# Aqui podemos ver como n2 vale 2 y si es false ¿Por que se entra en while?
recorrer(n2)
Hola,
Cuando se usan enteros para algún condicional, =0 es falso y !=0 verdadero.
Saludos!