I have three modules as:
one.py
:
def abc():
print "Heeeeeeeeeeeiiiiiioooooooooo"
two.py
:
import one
def defg():
one.abc()
three.py
:
import os
from time import sleep
import two
two.defg()
sleep(20)
directory = os.listdir('.')
for filename in directory:
if filename[-3:] == 'pyc':
print '- ' + filename
os.remove(filename)
I have three doubts.Kindly help me.
When i run three.py
for the first time one.pyc
and two.pyc
will be created. I can see it since i gave 20 sec delay. After executing the statement os.remove(filename)
, they gets removed. Until here its fine.
Again without closing the IDLE as well as script i ran three.py
. This time no .pyc
file was created. Why is this so ?
If I close IDLE as well as the script, .pyc
will be created as before.
Why the compiled code is not getting created again and agin ?
Also,if I make a change in one.py
it will not be shown if I run without closing the shells. I need a solution for this also.
Third doubt is if the compiled code is getting deleted first time itself then how the second run gives the same result without .pyc
?
Hoping for a solution...