#50. Пакеты (package) в Python. Вложенные пакеты | Python для начинающих
HTML-код
- Опубликовано: 27 сен 2024
- Обучающий курс: stepik.org/cou...
Создаем свои пакеты в программе на Python. Инициализатор пакета _init__.py, коллекция __all_ для контроля за импортом. Абсолютный и относительный импорты модулей в пакетах. Вложенные пакеты.
Telegram-канал: t.me/python_se...
Надо признать, что у Хирьянова появился достойный конкурент. Спасибо за курс)
Да, дальше всё сложнее, но относительно понятно, когда второй раз проходишь! Респектище!!!
автор классно объясняет, респектос и удачи в начинаниях
Сергей, вы волшебник. Я час мучился с импортом. Но посмотрев ваше видео буквально 14 минут и всё проблема решена
Как же классно все объяснено !
Наконец разобрался. 👍👍🏼👍🏾
Узнаю очень много дополнительный нюансов, благодарю!
Спасибо Вам большое , Вы здорово все объясняете!!!!
Спасибо интересная тема! давно интересовала!
Спасибо, отличное изложение! Узнал что-то новое
Спасибо. Отличный материал.
Суперское объяснение, данные надписи перестали быть загадкой:), спасибо автору. К собственным пакетам, применим такой синтаксис? - import courses as crs ? тогда crs.get_php - можно так делать?
Спасибо! Да, конечно!
4:35 Почему не можем? Директория __init__.py это же абсолютный путь файла, который будет добавлен в sys.path, а значит для остальных модулей находящихся в пакете не нужно приписывать лишнее courses
спасибо!
СПАСИБО
а вот этот урок мы добавляем в "избранное", чтоб долго потом не искать)
спасибо!👏👍
Добавлю, что относительный путь для импорта в __init__ работает только с from, просто например import . python не сработает.
Круть
А есть какие-нибудь стандарты и советы по внутренней структуре пакета? Типа классы лучше в отдельный подпакет, утилиты - в другой и тд...
Здесь уже решает сам программист как удобнее организовать данные.
Спасибо
Добрый день!
Создал тестовый пакет pack1 , в котором 3 файла __init__.py , test1.py, test2.py
Если в test2 написать
" from test1 import * "- то все работает,
а если так: "from .test1 import * " выдает ошибку "attempted relative import with no known parent package"
Хотя у Сергея отрабатывает "from .python import *" (например, на 8:57 в видео)
Другой пример, если рядом с первым пакетом положить pack2, с файлом test3.py, и в нем запустить "from ..pack1 import test1"
У меня выскакивает та же ошибка "attempted relative import with no known parent package"
Вроде бы одна точка - ищем в данном пакете, а если две - на уровень выше
Может быть, Сергей или кто-то из учеников сталкивался с такой проблемой? У меня python 3.9
Спасибо!
Так то вы все правильно понимаете, точка - текущий каталог, две - на уровень выше. Проверьте названия файлов и структуру папок, может где в названии русская буква проскочила )) частая ошибка )
👍👍👍👍👍
спасибо
Здравствуйте, у меня не импортируется модуль import courses.python в файл init.py
он собственный, его просто нет, наверное, у вас, вот и не импортируется
3:12
Спасибо за урок
Собственно в чем разница между . Перед import и двумя точками
И как вы там написали import.doc
А там было две функции doc_java и doc_python можно не писать имя функции полностью если точка?
Что значит точка?
Заранее спасибо
Качественное объяснение
Спасибо!
👍
Спасибо) для новичка сложновато, нужно пару раз пересмотреть
Спасибо, Сергей. Очень помог!
чувак ) спасибо!