Импорт собственных модулей в Python. Import modules. Атрибут модуля __name__ и __main__

Поделиться
HTML-код
  • Опубликовано: 15 июн 2020
  • 🔥🔥🔥 Инди-курс по Python 🔥🔥🔥
    stepik.org/course/63085/promo
    👉👉👉 Свой вопрос по курсу можешь задать в чате
    t.me/+SlnNhAO7caBlNDM6
    👉👉👉 Также подписывайся на мой телеграмм-канал
    t.me/python_egoroff
    Подробнее об урок
    egoroffartem.pythonanywhere.co...
    Импорт стандартных модулей в Python. Инструкции import и from
    • Модули. Импорт стандар...
    stepik.org/course/63085/promo
    Курс на степике
    В данном уроке мы вспомним о том, что такое модуль. Поговорим о стандартной библиотеке Python и узнаем как импортировать модули из стандартной библиотеки в наши программы.
    как работает импорт в python
    Для импортирования модулей применяются инструкции import и import from.
    Собственные модули импортируются как и стандартные модули python.
    Всего то надо написать инструкцию import И указать название модуля
    Все видео этого курса можете найти на сайте
    egoroffartem.pythonanywhere.co...
    или в Вк
    videos-177962775?secti...
    Если кому нужна помощь, предлагаю индивидуальные занятия. Подробнее пишите в личку в вк
    artem_egoroff
    python.study
    В данном группе можете найти информацию о новых видео и задать вопросы

Комментарии • 94

  • @egoroffchannel
    @egoroffchannel  24 дня назад

    🫵 Теория без практики - ничто, поэтому 👇
    🐍 stepik.org/course/63085/promo
    👉 специально для тебя создал бесплатный топовый курс по Python
    👉 В нем тебя ждет:
    📗 более 400 практических заданий на программирование
    📗 более 250 тестовых заданий на проверку материала
    📗 десятки часов видеоматерилов по теории
    📗 видеоразборы решения заданий
    📗 текстовые материалы по урокам, примеры кода
    📗 доступ к закрытому чату с дружественной обстановкой
    📗 сертификат в случае успешного прохождения курса

  • @eldos704
    @eldos704 4 года назад +34

    Никогда не понимал, зачем нужна конструкция if __name__, спасибо помог🙂

    • @kohich3290
      @kohich3290 3 года назад

      ага, тоже самое

  • @deniskrepak
    @deniskrepak 3 года назад +26

    Вау, реально много нового узнал про импорты. Концовка прям открыла мир кода в import модулях, не понимал для чего в конец пишут постоянно. Спасибо большое!

  • @user-fs9gp6oz8x
    @user-fs9gp6oz8x 3 года назад +13

    Давно хотела разобраться в конструкции if __name__= __main__. Спасибо за подробное объяснение!:) Как всегда, все сразу стало понятно:))

  • @dedpihto680
    @dedpihto680 2 года назад +2

    блин то чувство когда давно пользуешься импортами но иногда какая то чушь творилась. теперь все понятно. гасподь благословит тебя за это видео

  • @ivanfedorov7934
    @ivanfedorov7934 4 года назад +5

    действительно каждая минута ценная информация - спасибо!

  • @user-ee1lx1pe7n
    @user-ee1lx1pe7n 3 года назад +11

    Это был мегаполезный урок!!!

  • @marinazilkina6875
    @marinazilkina6875 2 года назад +3

    Артем, благодаря вам я еще раз убедилась, что преподаватель это не профессия, а призвание. сколько я ни билась с конструкцией if __name__ = '__main__', никак не могла осилить, было лишь смутное представление. Благодаря вам все стало ясно как день!Спасибо!!

  • @user-gv2rm6rj8t
    @user-gv2rm6rj8t 4 месяца назад

    Посмотрел до этого 3 ролика на эту тему, понял суть благодаря твоему

  • @user-nw5kl9rk9o
    @user-nw5kl9rk9o 4 года назад +4

    Спасибо! Очень классное объяснение!

  • @crazzyhorn9636
    @crazzyhorn9636 2 года назад

    Гениально все обяснили! Автору благодарность от души)

  • @phobosbios
    @phobosbios 2 года назад

    Из тонны лишней инфы, ЭТО ВИДЕО спасло меня, я понял основной принцып, спасибо огромное!

  • @user-mh5yb3ub3r
    @user-mh5yb3ub3r 4 года назад +2

    Спасибо, очень интересный урок

  • @KrymmyOZY
    @KrymmyOZY 4 года назад +6

    Я сам уже давно разрабатываю на Python и могу сказать одно!
    В то время как я начинал очень не хватало таких людей как вы, которые так досконально объясняют тему!
    Я хочу сказать спасибо за ваш видео курс! И как только появиться денюшка с радостью поддержу канал на Patreon или тут на ютубе

    • @green1278dramost5
      @green1278dramost5 3 года назад +4

      Как человек, не так давно приступивший к изучению Python, задаюсь вопросом, почему у давно разрабатывающего на Python возникает ситуация "как только появиться денюшка"? )

    • @KrymmyOZY
      @KrymmyOZY 3 года назад +2

      @@green1278dramost5 я зп потратил на новый комп) и не работал где то месяц нормально , так как было лень

  • @user-rw2ig6nb5l
    @user-rw2ig6nb5l 3 года назад +2

    Артем, спасибо большое.

  • @IhorZabudskiy
    @IhorZabudskiy Год назад

    Самое понятное обьяснение ever

  • @romancomit9210
    @romancomit9210 Год назад

    ООО, ты меня спас, дружище, спасибо. Везде смотрю - там наклонную черту при импорте ставят ака адрес - у меня ошибку выдает - весь экран заплевал от злости. А оказывается, нужно через точку

  • @qwertymegaforce9088
    @qwertymegaforce9088 Год назад

    Как всегда, очень полезный гайд

  • @Jack-rq8uv
    @Jack-rq8uv 3 года назад +1

    Очень полезная информация.

  • @namikmasimov4075
    @namikmasimov4075 2 года назад

    Спасибо вам большое!

  • @rioriocccp5929
    @rioriocccp5929 Год назад

    благодарю, все понятно

  • @RoKoFoRu
    @RoKoFoRu 2 года назад

    Суперское объяснение, спасибо! Не хватило разве что последнего тезиса про то запускать функции импортированного модуля.

    • @ahil7800
      @ahil7800 2 года назад

      Да вроде всё понятно. Импортированные функции запускаешь как свои.

  • @delsys
    @delsys 10 месяцев назад

    Спасибо ты решил мою проблему.

  • @kst5161
    @kst5161 7 месяцев назад

    Благодарю)

  • @sakura_ridz
    @sakura_ridz Год назад

    Емааа спасибо, всё понятно теперь

  • @huseynovlatif9655
    @huseynovlatif9655 2 года назад +1

    очень круто , кстати очень похоже на то как модули объясняются в книге"a byte of python"

  • @Dan-qi9wk9ye6d
    @Dan-qi9wk9ye6d 2 месяца назад

    Спосибо большое

  • @Das.Kleine.Krokodil
    @Das.Kleine.Krokodil 2 года назад

    Спасибо

  • @reclreclur7203
    @reclreclur7203 11 месяцев назад

    Наконец-то узнал про энти мейн и нейм

  • @pahimself
    @pahimself 3 года назад +2

    Классно излагаешь

  • @ankhmarcius8331
    @ankhmarcius8331 4 года назад +3

    про пути много нового узнал, спасибо ) если системные пути, и пути библиотек программа узнаёт из настроек системы, то откуда появляется путь проекта, кроме пути запускаемого файла? он создаётся в пайчарме? во время создания проекта, тупо добавляет ещё один путь? если файлы перенести в другую папку, импорты могут не работать, потому что путь проекта не будет соответствовать?

  • @ahil7800
    @ahil7800 2 года назад

    Присоединяюсь ко многим комментариям ниже. Вот теперь я понял что значит иф нэйм == мэйн.

  • @Jingotube
    @Jingotube 3 года назад

    Артём, а классы изучаем в видео про ООП?

  • @AlexRuban...
    @AlexRuban... 2 года назад

    спасибо тебе за 5:43 , но вопрос, это как то можно вынести в настройку окружения ? как в MSVS c++? где просто настраиваешь пути - ../fgfdgf/gfdgfd/include

  • @kinkcat77
    @kinkcat77 4 года назад +3

    Джуниор 99р мидл 149))Вот это замануха))

  • @alexzir
    @alexzir 3 года назад +3

    Повезло, попал на этот канал. Супер подача!
    Где советуете лучше проходить ваши курсы ( на степике.... )?

    • @egoroffchannel
      @egoroffchannel  3 года назад +2

      Да, там лучше

    • @alexzir
      @alexzir 3 года назад

      @@egoroffchannel тем не менее здесь вы быстро комментируете, а там (в степике) нет, как я заметил (

    • @girrra1233
      @girrra1233 2 года назад

      @@egoroffchannel можешь объяснить один момент, получается конструкция __name__ main используется только для контроля выполнения кода в импортируемом файле? Допустим я наложил это условие, тогда эти куски никак насильно выполнены быть не могут там куда был произведен import? Тогда я не очень понимаю зачем они вообще нужны. Я просто еще не очень в курсе проект можно организовать так, что отдельные модули будут работать независимо?(тогда это имело бы смысл)

  • @user-ox7kc4fd1m
    @user-ox7kc4fd1m 3 года назад

    Здравствуйте! Не подскажете какими уроками этого канала продолжить?

  • @somthingwrong3602
    @somthingwrong3602 3 года назад +3

    Спасибо за уроки, все очень качественно! Вопрос: у меня в PyCharm при импорте своих модулей не видит через '.' функций импортируемого модуля, но при этом когда ее используешь то она работает.

    • @user-gn7qq2wi8u
      @user-gn7qq2wi8u 2 года назад

      У меня в папке одного приложения работает с точкой. В папке другого приложения этого же проекта импорт работает без точки. Не могу разобраться как так получается

  • @Trapeciya
    @Trapeciya 4 года назад +5

    Вот, что нужно расказывать при обучении, а не сложение и вычитание!

    • @user-ny7ln5td1o
      @user-ny7ln5td1o 4 года назад

      сложение и вычитание показывается для примера. когда будешь писать программу тебе эти методы очень понадобится, только ты уже вместо цифр будешь подставлять свои переменные и т.д.

  • @k15e15
    @k15e15 Год назад

    Много нового узнал, спасибо вам, но у меня есть вопрос. Как переменную из функции в одном файле вызвать в другом файле?

  • @user-pd3qu2ne3j
    @user-pd3qu2ne3j 3 года назад +1

    Когда будет продолжение??

  • @user-os1xg1rh4c
    @user-os1xg1rh4c Год назад

    можно ли импортировать модули в несколько потоков ? например, импорт занимает много времени, пока это выполняется, делается что-то еще.

  • @bananaovf
    @bananaovf 3 года назад +1

    когда продолжение?)

  • @GameFlov
    @GameFlov 2 года назад

    Никто:
    Я который узнал об этом случайно импортировав main

  • @mariownyou
    @mariownyou 4 года назад +1

    Видео как всегда супер, не подскажешь, какую тему для pyCharm ты используешь?

  • @Doubkovski
    @Doubkovski 4 года назад

    хотелось бы продолжение
    интересует следующее разбор
    допустим:
    1) есть основная программа my_app.py в ней довольна таки большой код она использует достаточно много библиотек например алхимию ос реквесты и т.д.
    2) тут принимается решение разбить на модули, например вынести классы базы в отдельный модуль, некоторые функции проверок имён в другой и т.д.
    pycharm естественно подсвечивает что необходимо так же импортировать модули и библиотеки в новом файле в который я вынес вынес часть функций
    в главном файле my_app.py также требует импорт тек же библиотек и модулей
    получается что при импортировании в my_app.py например from product_modules import ff_chekers as check
    как правильно работать если в модулях так же используется дополнительные модули и библиотеки...
    Автор запили видосик ещё коротенький минут на 5

  • @user-yj9cl5rv9d
    @user-yj9cl5rv9d Год назад

    подскажите: я создал функцию в файле сохранил в папку пайтона. Как мне сделать так, чтобы можно было ее использовать в новых файлах, но не обязательно в той же папке?

  • @ARoma-ew8sz
    @ARoma-ew8sz 4 года назад

    Привет, что нужно для хорошего написания ЕГЭ (языки, и т.п)

  • @akihito3920
    @akihito3920 Год назад

    Можно ли както импортировать имена которие стоят под функцией например я хочу импортировать my_str которая стоит под функцией или так незя ?

  • @kirillusenko
    @kirillusenko 4 года назад

    Здравствуй Егор, можешь пожалуйста подсказать книгу для веб-разработки. В идеале конечно Джанго, но фласк тоже можно. Заранее большое спасибо.

    • @egoroffchannel
      @egoroffchannel  4 года назад +1

      Нету тут никаких Егоров, Николай!)

    • @Jingotube
      @Jingotube 3 года назад +1

      @Polzovatel Seti Вы все с дуба рухнули?)))

  • @jewwrld9385
    @jewwrld9385 2 года назад

    Доброго времени суток.Как сделать, если у меня есть две разные программы на питоне Proga1, Proga2. Proga2 в ней есть функция, которую нужно импортировать в Proga1. Пробовал import Proga2. Не получается

  • @dimitrilarios1227
    @dimitrilarios1227 3 года назад +1

    Сделай пожалуйста видео об исключениях в Python.
    Спасибо.

    • @egoroffchannel
      @egoroffchannel  3 года назад +1

      так они уже есть
      ruclips.net/video/fN4L5ZbOR0M/видео.html

    • @dimitrilarios1227
      @dimitrilarios1227 3 года назад

      @@egoroffchannel ООП только начинаю, а необходимость уже возникла, поэтому удивился что их нет в основном курсе. Спасибо.

  • @kit_js1086
    @kit_js1086 3 года назад

    Что делать, если у меня не видит это самое пространство имен сделал все как у тебя, но ничего не высвечивается делаю так же в пайчарме все точь-в-точь ( как завставить его показать все имена? (все работает просто не показывает наличие какого либо имени)

  • @SemyonMazepin
    @SemyonMazepin 10 месяцев назад

    У меня при импорте своего кода не появляются функции в подсказках после точки. Ретёрны, ифы, вайл, такое появляется

  • @_-_Dan91_-_
    @_-_Dan91_-_ 3 года назад

    Слушай, а дальше уроки будут?

  • @shyma_grasious
    @shyma_grasious 2 года назад

    и еще. Где выход на верхний уровень в импортах? почему этот важнейший момент упущен?

  • @nikprilutskiy7064
    @nikprilutskiy7064 Год назад

    А как теперь эти два принта запустить, после того как мы на них такое условие повесили?

  • @wavecheeez1246
    @wavecheeez1246 Год назад

    Так хорошо начал. А потом не туда ушло всё...

  • @eldaraliev4579
    @eldaraliev4579 Год назад

    Как изменить переменую из другова файла, чтобы она и там стала другой???. Но не переписывала сам код!

  • @Bloody_River
    @Bloody_River 3 года назад +7

    "Ст лайбрери" написано, а говорят "стд". Триггерит

  • @meyosh8734
    @meyosh8734 3 года назад

    Скажите, нет ли проблем с функцией importlib.reload() в Python 3.8.6.
    Просто, ни стандартные модули ни самописанные перезагрузить не удалось. Не думаю, что ошибся в коде, хотя всякое бывает.
    Модуль M66 расположен в рядом стоящей папке dir. Код выполняется до строки importlib.reload(), а затем вылетает с ошибкой.
    Пробовал и на прямую без папки dir, но получил, что имя модуля было не определенно. Есть вероятность, что проблема в названии самой программы(В случае когда название модуля начиналось с цифры импортировать его в программу мне не удавалось)

    • @meyosh8734
      @meyosh8734 3 года назад

      Сам код и ошибка.
      from dir.M66 import a
      import importlib
      print(a)
      a = 3
      print(a)
      importlib.reload(dir.M66)
      print(a)
      Traceback (most recent call last):
      File "E:/Files/Works/PyCharm projects/Training/66 - Импорт собственных модулей/66.2.py", line 8, in
      importlib.reload(dir.M66)
      AttributeError: 'builtin_function_or_method' object has no attribute 'M66'

    • @meyosh8734
      @meyosh8734 3 года назад

      Разобрался, все же проблема была в расположении.

    • @egoroffchannel
      @egoroffchannel  3 года назад

      да, там названия файлов странные

  • @user-dn7vq7uv8p
    @user-dn7vq7uv8p 4 месяца назад

    обычно Артем все объяснял не спеша но по этой теме слишком торопился. Так и не понял как он перенес в папку дир проек import_st_librari.........

  • @artem614
    @artem614 3 года назад

    Отличное видео, но ST! не STD

  • @randyharsh3046
    @randyharsh3046 7 месяцев назад

    как вообще из модуля может запускать файл верхнегго уровня?

  • @user-ms3dw2qx3s
    @user-ms3dw2qx3s 9 месяцев назад

    А как создать модуль?

  • @leonbs6059
    @leonbs6059 3 года назад +3

    И что теперь учить?

  • @Vladimir-re8xl
    @Vladimir-re8xl 3 года назад

    продолжение?

  • @JTmartShturmannVideo
    @JTmartShturmannVideo 3 года назад

    ожидать продолжения?

    • @egoroffchannel
      @egoroffchannel  3 года назад +1

      да, сейчас правда акцент видео по ООП, его можно параллельно начать изучать

  • @MrYbs-ie1jj
    @MrYbs-ie1jj 11 месяцев назад

    Вы создали не модуль, а отдельный файл

  • @niktonikak1820
    @niktonikak1820 2 месяца назад

    если нет бога, то кто создал этот канал?

  • @artemisnuk6432
    @artemisnuk6432 Год назад

    Не роботает

  • @nikkife2742
    @nikkife2742 Год назад

    Если начинающие начнут с Егорова, они так и останутся начинающими и с удовольствием забудут о программировании. Инфы то вроде, как и много, но такая подача, что даже если знаешь, то ничего не поймешь и окончательно запутаешься..

  • @shyma_grasious
    @shyma_grasious 2 года назад

    зачем if __name__ использовать если можно создать отдельный модуль где выполниться доп кусок кода??? ну че за говно придумали в с этим мейном? есть же модульная структура и главный файл который запускает необходимые модули. Только голову лишней инфой забиваете

  • @user-xy2jm7zt5u
    @user-xy2jm7zt5u 5 месяцев назад

    Спасибо