Конструкция __MAIN__ для чего и кому нужна.
Vložit
- čas přidán 12. 01. 2021
- Расскажу для чего мы пишем if __name__=='__main__' и кому это может пригодиться.
Важные моменты:
1) любой код на питоне лежит в модуле (файл с расширением py)
2) любой модуль при запуске программы получает атрибут _name_
3) один(!) модуль, с которого программа началась (точка входа) получает имя __main__, все остальные (которые импортированы) получают имя, равное имени в файловой системе, без расширения. Например first
4) Крайне важное для понимания! Любой модуль при импорте выполняется, как если бы мы его запустили отдельно. То есть все принты будут напечатаны(если они не в функциях), любой вызов функции выполнен.
if __name__=='__main__' означает "если этот модуль НЕ был импортирован, а запущен напрямую, то..." и все действия в данном блоке НЕ будут выполнены при импорте модуля.
Для чего это нужно в том числе новичку:
- группировать все наши действия, имеющие эффект, потом их просто найти и менять
- отладка, тесты, ассерты, при импорте они не выполнятся
- специфичные настройки для запуска
Подчеркну, что блок мейн вовсе не обязателен, это просто возможность что-то выполнять в модуле скажем для отладки так, чтобы не получить ненужные эффекты при импорте, если мы забыли отладочные вещи убрать.
Присоединяйтесь к помощи каналу, будет интересно)
✔️Бусти boosty.to/python_russian/donate
✔️Юмани 410011506612886
Будь первым везде и всегда, включай уведомления о новых выпусках 🔔
Смотри там где удобно🤩
✔️ python_russian
✔️ boosty.to/python_russian
✔️ / pythonrussian
✔️ t.me/python_russian
✔️ dzen.ru/python_russian
✔️ rutube.ru/channel/24346352/
#Python #PythonRussian #PyCharm
Феноменально превосходное объяснение для чего необходима эта конструкция!
Ни на курсах, ни по роликам до этого никто не смог объяснить.
Бриллиант!
Спасибо! пересмотрел с пяток видео про __main__ и только с твоего видео стало понятно что это такое и как оно работает и для чего оно нужно!
рад, что помог, для того и записывал
Аналогичная ситуация! Большое спасибо за объяснение!!!
Благодаря таким комментам, я понимаю что не один так туплю) а благодаря автору этого замечательного видео, мы начинаем меньше тупить и больше соображать) класс 👍
Аналогично, коллега!
Вы тот учитель, о котором я мечтала в школе и университете! Это действительно талант. Заметила, что на ваших роликах у меня мозг оживает, а не пытается впасть в спячку. Абсолютно нет ощущения, что информация воспринимается через сопротивление. Наоборот, все так логично и понятно, что хочется копать глубже. Вы ангел, спасибо за ваш труд!
спасибо за добрые слова
Не перестаю удивляться тобой, и твоим логическим ходом понятным для меня новичку в питоне объяснением!!!!!!!!!!!! Спасибо тебе огромное!!!
Согласен с комментаторами. Первое видео, где услышал и увидел внятное, подробное, даже слишком, объяснение __main__.
Теперь понятно, почему из доп модулей нужно импортировать конкретные классы и функции. Либо в каждом модуле нужно прописывать if __name__ == __main__.
Прямо магия python :)
Спасибо, очень доходчиво!
Спасибо большое автору за простое и качественное объяснение этой темы! Без спешки, акцентирование внимания на ключевых моментах и подытог в конце видео - все это позволило мне понять эту конструкцию. До этого 2 дня смотрел объяснения других авторов, читал статьи на эту тему - вроде, понятно и не понятно. Другому человеку бы не смог объяснить эту тему, значит не понял. А тут такое классное объяснение! А еще параллельно повторял за автором. Еще раз спасибо большое!)
Лучшее объяснение из всех, что я видел. Спасибо
Блин ты реально красавчик!! спасибо большое! До такой степени доходчиво объяснил! пересмотрел кучу видосов - одна вода, твой видос - 0 воды!
Кроме великолепной подачи материала, Ваши уроки выделяются еще и уважением к своим слушателям, новичкам в Питоне. Особенно на фоне многих других авторов роликов типа "язык ## для маленьких и тупых" с спутанными мыслями, невнятной речью и чрезмерным ЧСВ
спасибо. Ну канал для новичков и создан, все мы в какой то момент ими были, так почему бы их не уважать?))
Автору обязательно надо продолжать выкладывать видео по другим темам. Феноменально простое объяснение.Реально только на этом видео и понял для чего это конструкция !
Спасибо огромное, пересмотрел много других видео на эту тему и только Ваше разложило все по полочкам. Еще раз, СПАСИБО ВАМ ОГРОМНОЕ !
Лучшее видео об этой теме, не по 3 минуты, а 15, зато всё понятно.
Ну наконец то нашёл понятное объяснение!👌
Спасибо большое автору!лайкнул и подписался!
Спасибо, вы очень доходчиво обьясняете. Повезло вашим коллегам по работе.
Отлично. Как жаль, что я так поздно нашел ваш канал. Реальные объяснения от практика с реальными практическими примерами.
Прекрасная подача материала. Не всем дано умение передавать свои знания , где конечным результатом будет освоение полученной информации и применение на практике с абсолютным пониманием. По ходу разобралась с fonction def. Начала пересмотр всех ваших видео. Спасибо за проделанную работу .
Спасибо вам огромное. У вас самое понятное и подробное объяснение этой конструкции
знаком с питоном больше года, просто балуюсь) тысячи всяких видосов смотрел, кучу статей. Никогда не понимал суть __мэйн__ ) да и не нужно особо было.. тут просто за 10 минут раз и ПОНЯЛ) спасибо!
Мужик, спасибо тебе!
Я на курсах хекслета не мог понять, 20 раз перечитал теорию, твое объяснение и сразу все встало на свои места! Респект
Можно часами слушать как Walemir1 рассказывает о магических атрибутах модуля!
там всего 15 минут)))
@@PythonRussian *4 вот и час) Эти видео правда можно слушать часами, тем более по Пайтон для новичка я правда по несколько раз прослушиваю - приятная речь, интересное и понятное содержание, да ещё и без "эээээээ", я одно видео по Блендеру смотрел, так там если все "ээээээээээ" вырезать тайминг раза в два с половиной короче бы стал, и это правда тяжело слушать
Спасибо за объяснение!!! Очень доходчиво был рассказан этот материал.
Спасибо большое за разбор! Проще на ютубе не нашёл.
благодарю за отзыв! буду и дальше стараться
Автору, грамоту, премию или всё ,что захочет. Лишь бы продолжал. Действительно первое понятное объяснение! 👍
мне и ордена не надо -я согласен на медаль! =)
Спасибо! Только понял зачем нужен if __name__=="__main__". 4 видео уже просмотрел и ни в одном не мог чётко понять что это. Очень хорошо объясняете!
благодарствую, ваш ход подачи мысли хоть и чуть дольше, но доходчивее в сравнеие с другими видеоматириалами
Лучшее объяснение котороя я когда либо встречал, просто топ )
Спасибо за чёткое объяснение!
замечательное объяснение, спасибо!
Объясни пожалуйста простими словами
огромное спасибо Мужик! отменный контент, без воды и по делу
Наконец-то наткнулся на доходчивое объяснение, спасибо!
Лучшее видео по теме if __name__=='__main__'
Спасибо, только с твоего объяснения все стало понятно!
Благодарю! Пожалуй самое понятное объяснение из всего многообразия.
Чётко и по делу, без лишней воды
Пересмотрел кучу видео ничего не понимал, автор на 14:42 объяснил всю суть )) "НЕ ВЫПОЛНЯЙ ТО ЧТО НИЖЕ ЕСЛИ МЫ ИМПОРТИРУЕМ ЭТОТ МОДУЛЬ" ))) Спасибо))
Спасибо огромное !!!! Это максимально простое и понятное объяснение на просторе ютуба
Хорошее видео. Только с него понял. Для понимания не хватало простого пояснения концепции про имена, которые присваиваются модулям в зависимости от того первичные они или импортированные.
Очень хорошо объяснил 👍
Спасибо огромное за понятное и доходчивое объясние!
Отлично объяснил. Спасибо!
Большое спасибо за видео!
просто гениальное объяснение!!!!
Спасибо, так объяснили что все понятно👌
Спасибище огромное!
спасибо. только посмотрев это видео, стало все понятно по этой теме.
Шишкарно объяснил.
спасибо большое за отзывчивость! прояснилось то что не понимал, а именно
Когда интерпретатор Python читает исходный файл, он исполняет весь найденный в нем код. Перед тем, как начать выполнять команды, он определяет несколько специальных переменных. Например, если интерпретатор запускает некоторый модуль (исходный файл) как основную программу, он присваивает специальной переменной __name__ значение "__main__". Если этот файл импортируется из другого модуля, переменной __name__ будет присвоено имя этого модуля.
Единственное видео где понятно зачем это надо
теперь эти строки читаюся по другому =) это я ощутил сразу, прям удовлетворение какое то получил
You make good explanations!
Thank you!
Спасибо за видео
Спасибо большое!!!!!!
я - новый присоединившийся. Питонист пока только в душе ))))) Дорогой автор. Великолепная подача. Практически получил оргазм от изложения, содержания и проч. Начинаю активно просматривать остальные видео на канале и присоединяюсь к ТЛГ-каналу. Пожалуйста не останавливайся и продолжай делиться знанием или безкорыстно или корыстно но умеренно )))) Спасибо
спасибо, не забывайте что мои видео только довесок и мотив к доке и книгам, без чтения и практики изучить питон не получится.
@@PythonRussian не знаю как остальное содержание канала, но данный урок очень удачный на мой взгляд. Еще раз благодарю.
Такого крутого объяснения нигде не видела
ЮуХу! Нормальный звук!
А если серьезно - классный контент! Так держать!
не, все верно, с микрофоном были проблемы, наладили =)
💥💥💥
Самое лучшее объяснение и не объяснимо мало просмотров
Спасибо, теперь все понятно)
Объясни пожалуйста простыми словами
Отлично.
Не понимаю почему такой талант не в топах😱
Огромнейшее спасибо!!!
Придут деньги, обязательно донат🤓(только куда?)
в описаниях к видео есть кошелек юмани
Большое спасибо
Браво👏
Хотелось бы услышать объяснение конструкторов типа __init__, если есть на вашем канале ссылочку пожалуйста.
Спасибо мужик
Спасибо, тоже понял только после этого видео
Лайкос однозначно, но можно голос чуток погромче сделать :)
Вот спасибо!
Спасибо
огонь, разобрался!
Топ Контент))
стало понятно теперь)
О, микро починил! Красавца, автор!
ага, спасибо, включил плагин в ОБС, спасибо всем кто научил уму-разуму:-)
Спасибо за микрофон!
а микрофон все тот же)) просто подсказали про шумоподавление в OBS
Как здорово, спасибо огромное. Великолепное объяснение. Как у Вас дела? Возвращайтесь, пожалуйста!
привет, спасибо все хорошо, времени только мало, а работа очень интересная=) Вот в отпуск пойду и постараюсь снять еще видео.
@@PythonRussian Буду ждать с нетерпением. Каждое видео на канале поднимает мой уровень понимания пайтон. Редкий случай, когда обучение не утомляет, а вызывает интерес узнавать еще и еще.
охренеть!
что конкретно вы хотите сказать?
@@PythonRussian я в шоке от качества информации и манеры подачи информации. Я такого не видел нигде.
Сделайте видео про модуль functools.
Почему при импортировании модуля(другого проекта), он не запускается сразу, как у вас???
13:54 а что если только собака есть ?
тогда даже не знаю, что посоветовать =)
Слишком тихо, даже в наушниках не слышно почти, особенно если сидишь не в тишине
ни хера не слышно, соответственно и труднопонятно...