At 11:58 AM 4/14/03 -0400, Jeremy Hylton wrote: >On Mon, 2003-04-14 at 11:52, Phillip J. Eby wrote: > > If I understand correctly, it should also be breakable by deleting 'foo' > > from the outer function when you're done with it. E.g.: > > > > def bar(a): > > def foo(): > > return None > > x = a > > foo() > > > > del foo # clears the cell and breaks the cycle > > > >You haven't tried this, have you? ;-) Well, I did say, "If I understand correctly". :) What's funny is, I could've sworn I've used 'del' under similar circumstances before. It must not have been to delete a cell, just deleting something else in a function that defined a function. Ah well. >SyntaxError: can not delete variable 'foo' referenced in nested scope Interestingly, it gives me a different error in IDLE: "unsupported operand type(s) for -: 'NoneType' and 'int'" >Since foo() could escape bar, i.e. become reachable outside of bar(), we >don't allow you to unbind foo. So do this instead: foo = None
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4