🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: es.comp.os.linux.programacion
Article #7572

Re: Problema con clases Python

#7572
From: José Antonio Calvo
Date: Sun, 16 Feb 2003 12:50
27 lines
2017 bytes
>>>>> "Jaime" == Jaime Suarez <jsuarez@ono.com> writes:

    Jaime> El c�digo de debajo, simplificado al m�ximo deber�a sumar
    Jaime> dos polinomios. Sin embargo el resultado al ejecutarlo es:

    Jaime> a= [[1, 2]] a+a= [[1, 4]] a= [[1, 4]]

    Jaime> �Por qu� "a" se modifica?

Pues se modifica porque las listas se pasan por referencia, en
realidad, todo menos los tipos b�sicos se pasan por referencia.

La soluci�n:

from copy import deepcopy

y self.p=deepcopy(lista) en vez del self.p=lista del constructor

deepcopy lo copia todo recursivamente, tambi�n tienes shallowcopy que
copiar�a s�lo la lista, pero mantendr�a referencias a sus contenidos

Un saludo.

-- 
Jos� Antonio Calvo <josh@escomposlinux.org>
Linux Registered User #194638
Powered by Debian GNU/Linux sid
Technical Details
Message-ID: <87ptps5qza.fsf@monegrux.micasa>
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!newsfeed.stanford.edu!nntp.cs.ubc.ca!nntp-relay.ihug.net!ihug.co.nz!west.cox.net!cox.net!news-hub.cableinet.net!blueyonder!marmolejo.escomposlinux.org!antonio.escomposlinux.org!monegrux.micasa!news
References: <slrnb4ttfr.2p0.jsuarez@cachonero.org>

Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII
X-Google-Thread: f86c8,2c7eac70b8de8722
X-Google-Attributes: gidf86c8,public
X-Google-ArrivalTime: 2003-02-16 04:51:13 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!newsfeed.stanford.edu!nntp.cs.ubc.ca!nntp-relay.ihug.net!ihug.co.nz!west.cox.net!cox.net!news-hub.cableinet.net!blueyonder!marmolejo.escomposlinux.org!antonio.escomposlinux.org!monegrux.micasa!news
From: josh@escomposlinux.org (José Antonio Calvo)
Newsgroups: es.comp.os.linux.programacion
Subject: Re: Problema con clases Python
Date: Sun, 16 Feb 2003 13:50:49 +0100
Organization: Ecolnet
Lines: 27
Message-ID: <87ptps5qza.fsf@monegrux.micasa>
References: <slrnb4ttfr.2p0.jsuarez@cachonero.org>
NNTP-Posting-Host: 193-153-251-155.uc.nombres.ttd.es
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 8bit
X-Trace: antonio.escomposlinux.org 1045399870 22888 193.153.251.155 (16 Feb 2003 12:51:10 GMT)
X-Complaints-To: antonio@escomposlinux.org
NNTP-Posting-Date: Sun, 16 Feb 2003 12:51:10 +0000 (UTC)
User-Agent: Gnus/5.090015 (Oort Gnus v0.15) Emacs/21.2
Cancel-Lock: sha1:wOhYIJ9g2ZSl9Zsii0ChaLtbB2Y=