Yenidən yüklənmə

Effektivlik baxımından interpretatorla hər iş seansında modullar yalnız bir dəfə daxil edilir. Odur ki, əgər modul kodlarında hər hansı dəyişiklik etmisinizsə, bu dəyişikliklərin qüvvəyə minməsi üçün ya interpretator yenidən işə salınmalı, ya da daxil etdiyiniz modul yenidən yüklənməlidir.
Modulun yenidən yüklənməsi importlib modulunun reload() funksiyası vasitəsilə həyata keçirilir. Bu funksiya çağırılmazdan öncə yenidən yükləmək istədiyimiz modul bir daha daxil edilməlidir. Mövzunun tam anlaşılması üçün gəlin bunu təcrübədə tətbiq edək. Nümunə üçün yuxarıda hazırladığımız my_module modulunun quadequ() funksiyasında cüzi bir dəyişiklik edib bu modulu yenidən yükləyəcəyik.
Xatırlayırsınızsa, quadequ() funksiyasında kvadrat tənliyin real kökü olmayanda print(‘No real roots.’) ifadəsi icra edilirdi. Biz bu funksiyanı bir dəfə icra etdikdən sonra modula daxil olub həmin ifadəni print(‘Həqiqi köklər yoxdur.’) ilə əvəzləyəcəyik. Sonra my_module modulunu yenidən yükləyib quadequ() funksiyasının yenilənmiş variantını çağıracağıq:

>>> import my_module
>>> import importlib
>>> my_module.quadequ(1, 2, 3)
No real roots.
>>> import my_module
>>> importlib.reload(my_module)
<module 'my_module' from 'C:\\Python34\\my_module.py'>
>>> my_module.quadequ(1, 2, 3)
Həqiqi köklər yoxdur.
>>>

Burada my_module modulunda müvafiq dəyişiklikləri etdikdən sonra onu yaddaşa verməyi unutmayın.

Yenidən yüklənmə” üçün bir şərh

Şərh üçün bağlıdır.