Why my modification of source file doesn't take effect when debugging?

Dave Hansen iddw at hotmail.com
Mon Dec 5 10:54:37 EST 2005


On Fri, 02 Dec 2005 18:04:15 +0100 in comp.lang.python, Christophe
<chris.cavalaria at free.fr> wrote:

>infidel a écrit :
>>>I'm using the Windows version of Python and IDLE. When I debug my .py
>>>file, my modification to the .py file does not seem to take effect
>>>unless I restart IDLE. Saving the file and re-importing it doesn't help
>>>either. Where's the problem?
>> 
>> 
>> "import" only reads the file the first time it's called.  Every import
>> call after that looks up the module in memory.  This is to prevent
>> circular dependencies between modules from creating infinite loops.
>> You need to use the reload() function:
>
>As a matter of fact, it would help a lot if that stupid behaviour of 
>Idle was dropped. I'm sure I'm not the only one who lost lots of time 
>because of that bug. Yes I call it a bug.

But, if you are editing a Python Module in Idle, and press F5 to run
the module, the interpreter is restarted for you.  So what's the
problem?

I would consider it a far greater problem if Idle _didn't_ do that --
it could mean you module worked when you were debuggining it because
of some initialization that doesn't get performed in a clean start.

Regards,
                                        -=Dave

-- 
Change is inevitable, progress is not.



More information about the Python-list mailing list