Python's "only one way to do it" philosophy isn't good?
Michele Simionato
michele.simionato at gmail.com
Fri Jun 29 02:23:48 EDT 2007
On Jun 29, 6:44 am, Douglas Alan <d... at alum.mit.edu> wrote:
>
> I've written plenty of Python code that relied on destructors to
> deallocate resources, and the code always worked.
You have been lucky:
$ cat deallocating.py
import logging
class C(object):
def __init__(self):
logging.warn('Allocating resource ...')
def __del__(self):
logging.warn('De-allocating resource ...')
print 'THIS IS NEVER REACHED!'
if __name__ == '__main__':
c = C()
$ python deallocating.py
WARNING:root:Allocating resource ...
Exception exceptions.AttributeError: "'NoneType' object has no
attribute 'warn'" in <bound method C.__del__ of <__main__.C object at
0xb7b9436c>> ignored
Just because your experience has been positive, you should not
dismiss the opinion who have clearly more experience than you on
the subtilities of Python.
Michele
More information about the Python-list
mailing list