es una de esas cosas casi imposibles de encontrar en google (las key words son o demasiado genericas o demasiado especificas).
El día 8 de abril de 2014, 12:08, Rock Neurotiko <[email protected]> escribió: > Vale... > Juro que busqué en Google, pero no lo encontré XD > Gracias! =D > > > El 8 de abril de 2014, 21:06, Jose Caballero <[email protected]> > escribió: > >> >> https://docs.python.org/3/tutorial/controlflow.html#default-argument-values >> >> >> >> El día 8 de abril de 2014, 12:02, Rock Neurotiko >> <[email protected]> escribió: >> > Muy buenas, >> > >> > Hace bastante que no escribo, pero hoy me he encontrado por reddit con >> > un >> > articulo en el que comenta una cosa de python, y no entiendo >> > perfectamente >> > que es lo que ocurre, asi que os pregunto, a ver si alguien sabe porqué >> > sucede :-) >> > >> > El codigo es este: >> > >> > def foo(x = []): >> > x.append(1) >> > print(x) >> > >> > foo() >> > foo() >> > foo() >> > [...] >> > >> > Recomiendo ejecutar, ya que el resultado es soprendente (a no ser que >> > entiendas perfectamente como funciona python, o ya te hayas cruzado con >> > esto >> > XD) >> > >> > Y ahora mi pregunta: ¿Porqué sucede esto? >> > Sé que tiene algo que ver con que Python al ejecutar la funcion la >> > recorre >> > buscando las variables que vaya a usar, y las guarda en el scope, en el >> > primer caso x viene del parametro (que seria []). >> > Como en python todo es un objeto, la llamada a foo() se queda como >> > "instanciado", por lo que las siguientes ejecuciones, al buscar "x" la >> > encuentra. >> > >> > No se si me explico, tampoco se si es eso, lo cierto es que estoy >> > bastante >> > confuso con esto XD >> > >> > Un saludo! >> > >> > >> > -- >> > Miguel García Lafuente - Rock Neurotiko >> > >> > Do it, the devil is in the details. >> > The quieter you are, the more you are able to hear. >> > Happy Coding. Code with Passion, Decode with Patience. >> > If we make consistent effort, based on proper education, we can change >> > the >> > world. >> > >> > El contenido de este e-mail es privado, no se permite la revelacion del >> > contenido de este e-mail a gente ajena a él. >> > >> > _______________________________________________ >> > Python-es mailing list >> > [email protected] >> > https://mail.python.org/mailman/listinfo/python-es >> > FAQ: http://python-es-faq.wikidot.com/ >> > >> _______________________________________________ >> Python-es mailing list >> [email protected] >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ > > > > > -- > Miguel García Lafuente - Rock Neurotiko > > Do it, the devil is in the details. > The quieter you are, the more you are able to hear. > Happy Coding. Code with Passion, Decode with Patience. > If we make consistent effort, based on proper education, we can change the > world. > > El contenido de este e-mail es privado, no se permite la revelacion del > contenido de este e-mail a gente ajena a él. > > _______________________________________________ > Python-es mailing list > [email protected] > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > _______________________________________________ Python-es mailing list [email protected] https://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
