यहाँ एक संक्षिप्त उदाहरण है:पायथन का imp.reload() फ़ंक्शन काम नहीं कर रहा है?
x.py:
class x:
var = 'from x.py'
y.py:
class x:
var = 'from y.py'
test.py
import imp
def write_module(filename):
fp = open('z.py', 'w')
fp.write(open(filename).read())
fp.close()
write_module('x.py')
import z
print(z.x.var) # Prints 'from x.py'
write_module('y.py')
imp.reload(z)
print(z.x.var) # Prints 'from x.py'
मैं क्यों दोनों यकीन नहीं है प्रिंट स्टेटमेंट वही हैं। मैं रीलोड() के बाद कक्षा x की नई परिभाषा का उपयोग कैसे कर सकता हूं?
आप '.pyc' फ़ाइल को भी हटा सकते हैं, जो पाइथन को मॉड्यूल को पुन: संकलित करने के लिए मजबूर करेगा। – katrielalex