Python - eliminar la lista que esta recorriendo con .pop()

 
Vista:
sin imagen de perfil
Val: 29
Ha disminuido su posición en 4 puestos en Python (en relación al último mes)
Gráfica de Python

eliminar la lista que esta recorriendo con .pop()

Publicado por oscar (11 intervenciones) el 29/04/2020 06:15:10
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
def http():
  veriry = [[0,1,2],
            [4,5,6],
            [7,8,9],
            [9,8,7],
            [6,5,4],
            [3,2,1]]
 
  for e in range(0,len(veriry)):
    if (7,8,9) == (veriry[e][0],veriry[e][1],veriry[e][2]):
      match = veriry.pop(e)
      return True
 
i = 0
while i < 10:
  if http():
    print("hi")
  i += 1


tengo un problema. cuando se cumple la condicion de la funcion tengo que me elimine la lista que esta recorriendo con .pop y despues me retorne "true", pero nunca se elimina la lista. por que no se elimina.
les agradeceria si me ayudan. gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 29
Ha disminuido su posición en 4 puestos en Python (en relación al último mes)
Gráfica de Python

eliminar la lista que esta recorriendo con .pop()

Publicado por oscar (11 intervenciones) el 29/04/2020 06:36:14
lo que pasa basicamente es que al volver a ejecutar la funcion la variable veriry no se modifico. que tengo que hacer para que se modifique?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 2.808
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

eliminar la lista que esta recorriendo con .pop()

Publicado por tincopasan (1082 intervenciones) el 29/04/2020 07:25:39
sacarla de la función,sino cada vez que la llames tendrá el mismo valor inicial.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

eliminar la lista que esta recorriendo con .pop()

Publicado por oscar (11 intervenciones) el 29/04/2020 07:31:10
Gracias por responder. Pero obligatoriamente necesito que esté dentro, ya que ese codigo solo es de prueba, en el original la funcion recibe prametros que la lista usa después.

¿No sabes si es posible que se pueda hacer con la lista dentro?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 2.808
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

eliminar la lista que esta recorriendo con .pop()

Publicado por tincopasan (1082 intervenciones) el 29/04/2020 10:33:15
y si, pero si vuelves a llamar a la función ya volverá a tenr el mismo valor inicial.Deberías ser más claro, preguntas una cosa y después agregas otra.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 9
Ha disminuido su posición en 8 puestos en Python (en relación al último mes)
Gráfica de Python

eliminar la lista que esta recorriendo con .pop()

Publicado por Mathias (2 intervenciones) el 29/04/2020 12:12:15
1. La variable "veriry" solo existe dentro de la funcion "http", al salir de la funcion esa variable ya no existe, y cuando vos llamas a la funcion la variable "veriry" es creada de nuevo dentro de la funcion "http"
2. Si pones "math=veriry.pop(int)" , la metodo pop() le pasa a la variable "math" el valor que esta eliminando de "veriry", pero nunca sacas el valor de "math" de tu funcion "http", una forma seria declarar a "math" como variable global fuera de tu funcion al inicio del script con "global math", despues pones lo mismo dentro de la funcion "http" y cambias tu linea 11 por las siguentes
veriry.pop(int)
math=veriry
3. Si no le pasas una lista como parametro a esta funcion para que chequee si tiene una lista igual en su variable "veriry" entonces la funcion no hace nada aun haciendo todo lo que dije
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar