main.py
pack1
__init__.py
pack1_1
__init__.py
module1_1a.py
При импорте следующим образом:
import pack1.pack1_1.module1_1a
# sys.modules
print(“pack1.pack1_1.module1_1a” in sys.modules) # True
print(“pack1.pack1_1” in sys.modules) # True
print(“pack1” in sys.modules) # True
# globals()
print(“pack1.pack1_1.module1_1a” in globals()) # False
print(“pack1.pack1_1” in globals()) # False
print(“pack1” in globals()) # True
С sys.modules все понятно.
Почему так происходит с globals()?
@Saluev вот для этого мне нужен был ответ на мой вопрос.
эм... ну например потому что globals() это словарь, содержащий объекты в глобальном скоупе.
Обсуждают сегодня