У меня есть две конкретные ситуации, когда я не понимаю, как импорт работает в Python:
1-я конкретная ситуация:
Когда я импортирую один и тот же модуль в два разных скрипта Python, модуль не импортируется дважды, верно? В первый раз, когда Python сталкивается с ним, он импортируется, а во второй раз он проверяет, был ли модуль импортирован, или делает копию?
2-я конкретная ситуация:
Рассмотрим следующий модуль с именемbla.py
:
a = 10
И затем у нас есть foo.py
, модуль, который импортируетbla.py
:
from bla import *
def Stuff ():
return a
И после этого у нас есть скрипт с именем bar.py
, который выполняется пользователем:
from foo import *
Stuff() #This should return 10
a = 5
Stuff()
Здесь я не знаю :Stuff()
возвращает 10 или 5?