Это не так, как import
работает в Python.После импорта module
в кешируется в sys.modules
как key
, value
пара имени модуля и объекта модуля.Когда вы снова попытаетесь импортировать тот же module
, вы просто получите уже кэшированное значение.Но sys.modules
доступен для записи, и удаление ключа the
приведет к тому, что python
проверит модуль и загрузит снова.
Хотя ответ Оливье является правильным подходом к этому, для вашего понимания import
, вы можете попробовать это:
import sys # Import sys module
count = 1
while (count <= 3):
# I want to iterate this line
# rand_gen is the python file
# A is the varialbe in rand_gen.py
# Having this expression A = np.random.randint(1, 100)
if 'rand_gen' in sys.modules: # Check if "rand_gen" is cached
sys.modules.pop('my_rand') # If yes, remove it
from my_rand import A # Import now
print('Random number is ' + str(A))
count = count + 1
Вывод
Random number is 6754
Random number is 963
Random number is 8825
Рекомендую прочитать официальные документы Python по Система импорта и Модуль кеша , для полного понимания.