.py (например, my_module.py).import my_module.my_module.my_function().Создание собственного модуля в Python – это довольно простая и важная концепция. Модуль, по сути, это просто файл с расширением .py, содержащий определения функций, классов, переменных или исполняемый код.
Вот как это сделать:
.py. Например, my_module.py.
# my_module.py
def greet(name):
"""Приветствует пользователя по имени."""
return f"Привет, {name}!"
def add(x, y):
"""Суммирует два числа."""
return x + y
my_variable = "Это переменная в модуле"
class MyClass:
def __init__(self, value):
self.value = value
def describe(self):
return f"Это экземпляр MyClass со значением: {self.value}"
# main.py
import my_module
# Используем функции и переменные из my_module
result = my_module.greet("Алиса")
print(result) # Вывод: Привет, Алиса!
sum_result = my_module.add(5, 3)
print(sum_result) # Вывод: 8
print(my_module.my_variable) # Вывод: Это переменная в модуле
instance = my_module.MyClass(10)
print(instance.describe()) # Вывод: Это экземпляр MyClass со значением: 10
from my_module import greet, add: Импортирует только конкретные функции или переменные из модуля. После этого их можно использовать напрямую, без префикса my_module.from my_module import *: Импортирует все имена, определенные в модуле. Использование этой формы обычно не рекомендуется, так как она может привести к конфликтам имен.import my_module as mm: Импортирует модуль под псевдонимом mm. Это полезно для сокращения имени модуля или для избежания конфликтов имен. Например: mm.greet("Боб")PYTHONPATH (если она установлена).site-packages в вашей установке Python.PYTHONPATH или переместить его в каталог, где Python его найдет.Дополнительные советы:
__name__ == "__main__":: Эта конструкция позволяет выполнять код только при непосредственном запуске файла (а не при его импорте как модуля).
# my_module.py
def my_function():
print("Функция из my_module")
if __name__ == "__main__":
print("Этот код будет выполнен только при запуске my_module.py напрямую")
my_function()
В заключение, создание собственных модулей – это фундаментальный навык для организации кода в Python, делающий его более модульным, переиспользуемым и поддерживаемым.