Python - ayuda con estas variables locale y globales al mismo tiempo

   
Vista:

ayuda con estas variables locale y globales al mismo tiempo

Publicado por Luis Domínguez (4 intervenciones) el 28/04/2015 02:21:35
Porque la variable A se modifica en la funcion, realmente no debería pasar. Ayuda por favor necesito una solución a este problema para poder seguir realizando un programa mas complicado pero con el mismo problema

1
2
3
4
5
6
7
8
9
10
11
12
A=[[1 for i in range(3)] for i in range(3)]
print A
 
def prueba(LU):
    for i in range(3):
        for j in range(3):
            LU[i][j]=i**j
    return LU
 
B=prueba(A)
print A
print B
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

ayuda con estas variables locale y globales al mismo tiempo

Publicado por Alejandro (5 intervenciones) el 28/04/2015 10:49:18
Hola Luis, puedes poner el código correctamente seleccionando la Arandela que tienes en el campo de escribir. de esa manera no tenemos que estar corrigiendo el código cuando lo probamos.
1
te tendria que quedar algo asi  print("Ejemplo al publicar código en el foro")
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

ayuda con estas variables locale y globales al mismo tiempo

Publicado por Luis (4 intervenciones) el 28/04/2015 22:00:25
ah!!! gracias no sabia
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
Imágen de perfil de xve

ayuda con estas variables locale y globales al mismo tiempo

Publicado por xve (1230 intervenciones) el 28/04/2015 15:37:32
Hola Luis, la verdad es que no entiendo porque modifica el contenido de la variable A... lo he estado buscando y no se encontrar una respuesta...

Haber si alguien nos puede ayudar...

Lo he probado con Python 3 y hace lo mismo...
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

ayuda con estas variables locale y globales al mismo tiempo

Publicado por Luis (4 intervenciones) el 28/04/2015 22:06:35
Gracias de todas formas...
Realmente necesito una solución a esa dificultad que se me presenta.
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

ayuda con estas variables locale y globales al mismo tiempo

Publicado por 12-trunks-12 (37 intervenciones) el 28/04/2015 20:54:51
Buenas, yo cuando realicé el juego del 3 en raya usaba un método como el que estás haciendo tu, una lista con varias listas dentro y claro las posicionaba como si fuera un tablero. El caso es que para seleccionar una casilla usaba lo que estás usando tu en la función:

1
LU[i][j] = i**j    # En mi caso era tablero[columna][fila] o tablero[fila][columna] no recuerdo bien el orden

Lo que hacía era MODIFICAR ese espacio, por lo que python debe de interpretar eso, que al asignar a una casilla un valor pues lo modifica (yo lo veo bastante obvio, no se vosotros...)
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

ayuda con estas variables locale y globales al mismo tiempo

Publicado por Luis (4 intervenciones) el 28/04/2015 22:04:58
De antemano muchas gracias.
No entiendo realmente lo que me dices, pero existe una solución al problema planteado?
Yo entiendo que en la función las variables son locales y te brinda una respuesta, en este caso una lista. pero como es posible que la lista creada (momentáneamente o localmente) en la función modifique la variable global; si además estan definidas con nombres diferentes.
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

ayuda con estas variables locale y globales al mismo tiempo

Publicado por 12-trunks-12 (37 intervenciones) el 29/04/2015 20:33:51
Pues eso de que la modifique ya no lo se, lo que se me ocurre es que crees una copia de la lista que tienes y tengas la original y la que modificas
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

ayuda con estas variables locale y globales al mismo tiempo

Publicado por Luis (1 intervención) el 30/04/2015 00:02:19
Muchas gracias por sus comentarios. Ya encontré una solución en la página http://www.mclibre.org/consultar/python/lecciones/python_variables_2.html
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar