Test Foro de elhacker.net SMF 2.1

Programación => Scripting => Mensaje iniciado por: fakzo en 28 Noviembre 2016, 02:57 AM

Título: [Python] Como copiar un diccionario en otra direccion de memoria
Publicado por: fakzo en 28 Noviembre 2016, 02:57 AM
Hola a todos!

No logro copiar un diccionario de una variable a otra pero cambiando la direccion de memoria..

No se si logro expresarme bien.. es una duda puntual y no se como buscarlo :s

Para hacer esto mismo con listas si se como hacerlo..
Lo hago de la siguiente forma:
Código (python) [Seleccionar]

array1 = [2, 3, 4]
array2 = [7,6]
array1.append(array2[:])
array1 is array2 # la respuesta es false.. ya que son distintas direcciones de memoria


Intente hacer eso mismo con diccionarios.. pero obtuve como error "unhashable type"..

Lo que intente hacer fue..
Código (python) [Seleccionar]

array = [1,3]
dic = {1:"uno",2:"dos"}
array.append(dic[:])


Alguien tiene idea de esto?

Saludos!
Título: Re: [Python] Como copiar un diccionario en otra direccion de memoria
Publicado por: engel lex en 28 Noviembre 2016, 03:06 AM
Código (python) [Seleccionar]
dic1 = {1:"uno",2:"dos"}
dic2 = {3:"tres", 4:"cuatro"}
dic1.update(dic2)
Título: Re: [Python] Como copiar un diccionario en otra direccion de memoria
Publicado por: fakzo en 28 Noviembre 2016, 03:47 AM
Cita de: engel lex en 28 Noviembre 2016, 03:06 AM
Código (python) [Seleccionar]
dic1 = {1:"uno",2:"dos"}
dic2 = {3:"tres", 4:"cuatro"}
dic1.update(dic2)



Gracias!

Necesitaba copiarlo a una lista el diccionario.. es decir tengo una lista donde cada elemento es un diccionario, y quiero copiarlos pero dejando de lado la referencia al diccionario original..

Lo logre hacer asi:

Código (python) [Seleccionar]
lista.append(diccionario.copy)

Gracias por tu ayuda, me sirvio!

Saludos