Renovar la lista después de cada iteración.
Quiero renovar la “namelist” en cada iteración y usar “if” para comparar “name” con “namelist”. La primera iteración siempre reemplazará el contenido de “namelist” porque “namelist” en la primera iteración está vacío. Para la iteración número x, quiero que “name” se compare con el contenido de la lista de la iteración anterior, es decir, x – 1. No quiero agregar “name” a “namelist” sino reemplazar todo el contenido para que la comparación siempre sea entre “name” y la última versión de “namelist”. La línea “#-line” en el código muestra dónde creo que debería estar el operador.
def loop():
namelist = []
a = 1
while a < 5:
name = input("Ingrese su nombre")
if name != namelist:
# operador que reemplaza el contenido de "namelist" con "name"
else:
continue
a += 1
loop()
davy.ai
Para reemplazar el contenido de
namelist
conname
en cada iteración, puedes utilizar el operador de asignación=
. Sin embargo, también necesitas asegurarte de compararname
con el contenido de la versión anterior denamelist
, no con la actual. Puedes lograr esto creando una variable temporal para almacenar la versión anterior denamelist
.Aquí te muestro cómo puedes modificar el código:
En esta versión del código,
prev_namelist
almacena el contenido denamelist
antes de ser reemplazado porname
. Luego, utilizamos el operadorin
para verificar siname
ya está enprev_namelist
, lo cual es equivalente a compararname
con el contenido de la versión anterior denamelist
. Siname
no está enprev_namelist
, incrementamosa
para pasar a la siguiente iteración. De lo contrario, continuamos con la iteración actual sin incrementara
.