Article View: pl.comp.lang.python
Article #27279Re: odwolywanie sie w funckji do tej samej funkcji
From: Sebastian Kaliszewski
Date: Wed, 03 Feb 2010 14:24
Date: Wed, 03 Feb 2010 14:24
76 lines
3327 bytes
3327 bytes
Slawomir Piasecki wrote:
> to jak powinienem sie za to zabrac, zeby po wywolaniu i wykonaniu sie
> funkcji bRun
> takie obiekty jak "nr" czy "step", posiadaly informacje takie jak
> przed wywolaniem funkcji,
> bo jesli dobrze zrozumialem, jesli wywolam funkcje bRun i wewnatrz tej
> funkcji wywolam ja raz jeszcze (step = 1)
> i tam zapisze, ze step = 3, to po wykonaniu tej fukcji (tej drugiej) i
> powrocie do pierwszej funkcji, bede mial obiekt
> step = 3 mimo, ze przed drugim wywolaniem byl rowny 1
Źle zrozumiałeś.
Przypisanie nie będzie widoczne na zewnątrz. Ciągle mylis zobiekt i jego
nazwę, przypisanie to jest "podpięcie" nazwy pod obiekt. Na zewnątrz za
to widoczne będą zmiany w przekazanych obiektach. Czyli jak masz
def foo(lista=[]):
lista.append('bar')
print lista
print 'pierwsze:'
foo()
print 'drugie:'
foo()
print 'trzecie:'
foo([])
print 'czwarte:'
foo()
to wynikiem będzie...
pierwsze:
['bar']
drugie:
['bar', 'bar']
trzecie:
['bar']
czwarte:
['bar', 'bar', 'bar']
Natomiast wynik tego...
def foo(lista=[]):
lista = ['baz']
print lista
print 'pierwsze:'
foo()
print 'drugie:'
foo()
print 'trzecie:'
foo([])
print 'czwarte:'
foo()
będzie...
pierwsze:
['baz']
drugie:
['baz']
trzecie:
['baz']
czwarte:
['baz']
Bo w pierwszym przypadku zmieniamy obiekt z listÄ… a w drugim przed
zmianÄ… pod nazwÄ™ lista podpinamy nowy obiekt stary (ten z parametru)
zostawiajÄ…c w spokoju.
pzdr
\SK
--
'Never underestimate the power of human stupidity' -- L. Lang
--
http://www.tajga.org -- (some photos from my travels)
Technical Details
Message-ID:
<tdao37-6g8.ln1@bozon.softax.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!nf1.ipartners.pl!ipartners.pl!news.task.gda.pl!news.nask.pl!news.nask.org.pl!news.uni-stuttgart.de!rz.uni-karlsruhe.de!feed.news.schlund.de!schlund.de!newsfeed01.sul.t-online.de!t-online.de!news.mixmin.net!de-l.enfer-du-nord.net!feeder1.enfer-du-nord.net!news.glorb.com!news2.glorb.com!npeer01.iad.highwinds-media.com!news.highwinds-media.com!feed-me.highwinds-media.com!nx02.iad01.newshosting.com!newshosting.com!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!atlantis.news.neostrada.pl!news.neostrada.pl!bozon.softax.pl!newsReferences:
<546bbaa8-dce5-4be1-a4ef-26cd9be394d3@p24g2000yqm.googlegroups.com> <b7b192b5-0bbd-49a8-8c26-072e830f07c4@k41g2000yqm.googlegroups.com> <dad36e19-9cb9-4fa2-9ef7-a3e923482f3d@a5g2000yqi.googlegroups.com> <10bbe277-2a1e-45a0-bb46-62edd17c8433@r19g2000yqb.googlegroups.com> <b5f6fbfb-e053-4d8c-bf42-13e6112124e7@g29g2000yqe.googlegroups.com>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!nf1.ipartners.pl!ipartners.pl!news.task.gda.pl!news.nask.pl!news.nask.org.pl!news.uni-stuttgart.de!rz.uni-karlsruhe.de!feed.news.schlund.de!schlund.de!newsfeed01.sul.t-online.de!t-online.de!news.mixmin.net!de-l.enfer-du-nord.net!feeder1.enfer-du-nord.net!news.glorb.com!news2.glorb.com!npeer01.iad.highwinds-media.com!news.highwinds-media.com!feed-me.highwinds-media.com!nx02.iad01.newshosting.com!newshosting.com!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!atlantis.news.neostrada.pl!news.neostrada.pl!bozon.softax.pl!news From: Sebastian Kaliszewski <s.bez_spamu@remove.this.informa.and.that.pl> Newsgroups: pl.comp.lang.python Subject: Re: odwolywanie sie w funckji do tej samej funkcji Date: Wed, 03 Feb 2010 15:24:42 +0100 Organization: TP - http://www.tp.pl/ Lines: 76 Message-ID: <tdao37-6g8.ln1@bozon.softax.pl> References: <546bbaa8-dce5-4be1-a4ef-26cd9be394d3@p24g2000yqm.googlegroups.com> <b7b192b5-0bbd-49a8-8c26-072e830f07c4@k41g2000yqm.googlegroups.com> <dad36e19-9cb9-4fa2-9ef7-a3e923482f3d@a5g2000yqi.googlegroups.com> <10bbe277-2a1e-45a0-bb46-62edd17c8433@r19g2000yqb.googlegroups.com> <b5f6fbfb-e053-4d8c-bf42-13e6112124e7@g29g2000yqe.googlegroups.com> NNTP-Posting-Host: 83.18.189.42 Mime-Version: 1.0 X-Trace: atlantis.news.neostrada.pl 1265204853 25323 83.18.189.42 (3 Feb 2010 13:47:33 GMT) X-Complaints-To: usenet@news.neostrada.pl NNTP-Posting-Date: Wed, 3 Feb 2010 13:47:33 +0000 (UTC) User-Agent: Thunderbird 2.0.0.23 (X11/20090817) In-Reply-To: <b5f6fbfb-e053-4d8c-bf42-13e6112124e7@g29g2000yqe.googlegroups.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit