Does python hate cathy?
tjreedy at udel.edu
Mon Mar 24 09:03:55 CET 2008
"QS" <qingshan.chen at gmail.com> wrote in message
news:a5e95efc-f8cd-4595-bbbd-f5f59c45ea89 at u72g2000hsf.googlegroups.com...
>From the title, I assumed this was spam like others with similar titles --
and that the perl newsgroup, for instance, would have 'Does perl hate
| I am new to python, and I encountered a weird problem.
Observation: as you will learn, the form of the error message was different
from the standard tracebacks one gets during program execution. This was a
clue that it was a cleanup message and actually did make sense.
1. What a Python interpreter does after it executes the last statement is
undefined by the language spec. It could do absolutely nothing (and I wish
some programs that wastefully spend minutes 'cleaning up' did just that!).
CPython tries to do some cleanup when requested but the results are
sometimes seemingly arbitrary.
2. If you use __del__, do so for a reason (and keeping a population count
is one, though rare*), and explicitly delete the objects for which you want
*A population count is a good example of a class attribute. But it seems
to be rare in practice because if one wants that, it seems that a
population collection (with a len() method) is usually also wanted --
perhaps so one can iterate thru the population.
3. Experimenting with Python is a good way to learn. Keep it up!
More information about the Python-list