Имя модуля в Python
НАВИГАЦИЯ ПО СТРАНИЦЕ
Если модуль выполняется как
основная программа (т.е., он запускается напрямую), то значение name будет установлено в строку "__main__". Это позволяет определить, что данный модуль является точкой входа в программу.
Пример:
# mymodule.py
def my_function():
print("This is a function inside mymodule")
if __name__ == "__main__":
print("This module is being run directly.")
else:
print("This module is being imported as a library.")
Если вы выполните этот модуль непосредственно, то вы увидите вывод "This module is being run directly". Если вы импортируете его в другой скрипт, то будет выведено "This module is being imported as a library".
Если модуль импортируется как
библиотека в другой программе , то значение name будет установлено в имя самого модуля (без расширения .py).
Пример:
# another_module.py
import mymodule
mymodule.my_function() # Вызываем функцию из mymodule
print(__name__) # Выведет "another_module", так как это имя текущего модуля
В этом случае, значение name в модуле mymodule будет равно "mymodule", а в модуле another_module будет равно "another_module".
Использование name позволяет писать модули, которые могут быть как самостоятельными программами, так и библиотеками, в зависимости от контекста их использования.