0Pricing
Python Academy · Урок

Создание и импорт модулей

Пишите собственные модули и импортируйте их в другие скрипты.

«Создание и импорт модулей» — бесплатный урок Python Academy на CoddyKit. Это урок 1 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Python Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Python Academy содержит 4 уроков всего.

Введение

Модуль — это файл Python, содержащий функции, классы и переменные, которые можно импортировать в другие сценарии.

Что такое модуль

Любой файл .py является модулем. Файл utils.py можно импортировать так: import utils. Python ищет модули в sys.path.
import sys
print(sys.path[:3])

Инструкция import

import math импортирует весь модуль. Обращайтесь к нему с помощью math.sqrt(16). После первого импорта модуль кэшируется.
import math
print(math.sqrt(16))
print(math.pi)

from ... import

from math import sqrt, pi импортирует выбранные имена в локальное пространство имён. Префикс math. больше не нужен.
from math import sqrt, pi
print(sqrt(25))
print(pi)

import as (псевдонимы)

import numpy as np задаёт модулю короткое локальное имя. Это полезно для длинных имён модулей.
import os.path as osp
print(osp.join('a', 'b', 'c'))

from ... import *

from math import * импортирует всё. Избегайте этого: такая инструкция засоряет пространство имён и усложняет понимание происхождения имён.
# Avoid:
# from math import *
# Use explicit imports instead
print('namespace tip')

__name__ == '__main__'

if __name__ == '__main__': выполняется только при непосредственном запуске файла, но не при его импорте как модуля.
# In your script:
# if __name__ == '__main__':
#     main()
print(__name__)

Перезагрузка модулей

importlib.reload(module) повторно импортирует изменённый модуль без перезапуска программы. Это полезно в интерактивных сеансах.
import importlib, math
importlib.reload(math)
print('reloaded')

dir() и help()

dir(math) перечисляет все имена в модуле. help(math.sqrt) показывает строку документации.
import math
print(dir(math)[:5])

Путь поиска модулей

Python ищет в каталоге скрипта, PYTHONPATH и стандартном каталоге установки. Добавляйте пути с помощью sys.path.insert(0, '/mydir').
import sys
sys.path.insert(0, '/tmp')
print(sys.path[:3])

Переменная __all__

Определите __all__ = ['func1', 'func2'] в модуле, чтобы управлять тем, что команда from module import * экспортирует.
# In mymodule.py:
# __all__ = ['public_func']
# def public_func(): ...
# def _private(): ...
print('__all__ demo')

Быстрая проверка

От чего защищает конструкция if __name__ == '__main__':?

Повторение

Модули — это файлы .py. Используйте import или from...import. Конструкция if __name__=='__main__': защищает точки входа. dir() перечисляет имена. sys.path управляет порядком поиска.

Продолжайте обучение

Отлично! Перейдите к следующему уроку, чтобы углубить свои навыки.

Часто задаваемые вопросы

Урок «Создание и импорт модулей» бесплатный?

Да — полный текст урока «Создание и импорт модулей» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Python Academy, подпишись на CoddyKit PRO. Курс Python Academy содержит 4 уроков всего.

Чему я научусь в уроке «Создание и импорт модулей»?

Пишите собственные модули и импортируйте их в другие скрипты. Ты практикуешь Python Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Python Academy?

Предыдущий опыт не требуется. Python Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 1 из 4.

Сколько времени занимает урок «Создание и импорт модулей»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Python Academy?

Да. Каждый урок Python Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Создание и импорт модулей
  2. Стандартная библиотека Python
  3. Пакеты и __init__.py
  4. Установка пакетов с помощью pip
← Назад к Python Academy