Привет, меня зовут Никита Царевич, и я в IT больше 10 лет. Я занимаюсь архитектурой, управляю командами, но в первую очередь я инженер-программист. Уже несколько лет веду курсы по Python, и знаю, как и чему обучать людей с разным бэкграундом и опытом. Могу рассказать о Python и программировании так, что даже babushka поймёт.
Пікірлер
Все очень качественно объяснено, спасибо за материал
Спасибо за такой качественный разбор принципов, очень помогло расставить точки над i. и да, преподавание в европейском университете - это круто!!!
спасибо за отзыв)
Привет на 21:28 подразумевается ведь параллельное выполнение?
в этом примере да, можно назвать параллельным
2:25 - Не совсем. Они должны быть Hashable, а не Immutable. Например, у нас есть такой кортеж: names = ('Cler', 'Teresa', ['Raki']). Будет ли наш кортеж неизменяемым? Да, ведь с точки зрения питончика мы не можем его изменить. Можем ли мы его use в качестве key в dict? Нет, мы сразу получим ошибку: TypeError: unhashable type.
всё так, но в этом видео не хотелось лезть в такие детали, спасибо, что обратили внимание
@@pythonclinic Я понимаю, что ваш канал не для новичков, поэтому об этом стоило упомянуть. Ну да ладно, отличная лекция :) Ничего подобного 3 года назад в ру-сегменте не было.
Как всегда информативное, интересное видео. Спасибо вам за ваш труд! Ждем новых видео с интересными темами)
Обалденный урок, спасибо! Примеры не простейшие, а ровно такие, как надо. Без воды, все четко и по полочкам. Второй раз возвращаюсь сюда
Лучшие видео по питону! Манера, голос, подача материала - просто на высшем уровне. Плюс интересные темы. Непонятно почему так мало подписчиков. Каждое видео дико интересно. Какой-то педагогический талант у гражданина.
Браво браво Звучит интересно 🎉❤ А когда будет продолжение этой темы разговора подробнее 😮
есть ещё несколько видео на канале)
Спасибо за видео, замечу, что вместо объекта defaultdict в представленном примере, можно использовать метод setdefault обычного словаря, если я правильно понял.
а ещё метод get тоже подойдёт)
А еще для подобных задач стоит обратить внимание на collections.Counter
2 года пишу на питоне и только сейчас до конца понял как это работает. Автору спасибо!
Спасибо большое за новое видео Как всегда познавательно и актуально.
Возвращение легенды
очередное))
Отличное видео)
Спасибо огромное, тема очень интересная и полезная. Это прям то что нужно знать!
Поздравляю всех подписчиков клиники с новым видео🎉 ведущий как всегда свеж и приносит в наш мир знание! Лайк коммент подписка)❤
сяб
Ну так то log2(n) может быть < 1 при значениях n (0;2), так что при значениях 1 скорость роста будет больше просто у n)))
Спасибо за такой обзор!!! Лайк. Сил и Энергии!!!
А если объект 1мб он поделится на 4 арены? как произойдёт запись?
не, не поделится, большинство объектов в пайтон относятся к сложно устроенным ссылочным типам данных, части которых не будут превышать лимит и они будут хранится в разных аренах
Крутой урок и музыка на фоне огонь, выложи плиз код куда нибудь
Не буду распыляться: все круто. Однако есть одна просьба. Возможно, это только моя потребность, однако мне бы хотелось иметь ссылку на репозиторий с 2 вариантами данного кода (исходный и конечный), так было бы удобнее ориентироваться в том, что мы видим на видео. Часто при просмотре видео терялся в стремительном перемещении в файле, плюс ускоренный монтаж. Как дополнительная навигация и возможность пошагово явно повторить все преобразования в видео. Спасибо!
это хорошая идея, я подумаю, возможно новые видео будут выходить с репозиториями
@@pythonclinic было бы круто, в любом случае - спасибо! Кстати, хотим отдельное видео о внедрении зависимостей в python)) Я только учусь, поэтому мне интересно получать подобную информацию от специалистов высокого уровня (плюсом к другим источникам знаний и формам его получения)!
@@pythonclinic Кстати говоря, хотел уточнить, а где можно увидеть Вас в качестве преподавателя?
ОО НАШ ЧЕЛОВЕК, КАК ТАМ ТВИЧ ТВОЙ?
хех, не хватает времени к сожалению на твич, может летом придумаю что-то)
@@pythonclinic давай давай, это я кстати, помнишь про чела болтали на ютубе, который про языки рассказывает, FireShip вроде бы
Нафиг жидбрейнс, нафиг жидбрейнс, нафиг. Для новичка этот кал не подойдет абсолютно никак, потому что лучше разобраться в нужности чего-либо самому чем, нажимая две кнопки, принимать неосмысленно все советы и исправления ide. В комментах отмечали удобное создание окружения и подсказки pep'a с авто-форматированием, рефакторингом и авто-импортами. Крутые "киллерфичи", но что вы будете делать, когда в один прекрасный момент что-то из этой "красоты" отрыгнет, как в моей ситуации - после одного из апдейтов у меня отвалилась авто-активация окружения (не работала даже через командную строку и я познал все прелести приседаний вокруг их продукта, очистки системных папок, смены терминалов, пересоздания окружений и прочей чепухи, при этом таких, как я, оказалось приличное количество и приседали они тоже не один день). Одна из нелогичных вещей для новичка, которую выдает пайчарм - добавление текущей рабочей директории в переменные среды окружения(os.environ) при запуске любого питонячего файла, в отрыве от ide новичок долго будет чесать репу почему у него не сработают импорты, хотя окружение активировано. Абсолютно перегруженная, уродливая, моноязычная, лишенная даже простейшей возможности открывать jupyter notebook файлы в бесплатной версии (sic!), экосистемно бедная, спрятавшая нужную функциональность за paywall'ом ide. Чего стоит только жалкая попытка скопировать vscode со своим fleet. Поэтому сбежал, сбежал от этого кала в vscode. Большая часть фич пайчарма имеется, что-то работает так же, что-то хуже(безумный авто-импорт, например, или рефакторинг). Да, придется повозиться с настройкой всего под себя, что-то сначала не так удобно и привычно, так как это большой конструктор с миллионом опций, но это время не будет потрачено напрасно.
Ну не так, потоки в питоне могут выполняться одновременно , например когда используется библиотека numpy. Не может одновременно выполняться две инструкции самого интерпретатора например два умножения
каким бы быстрым он ни был, он так и остается никому не нужным
будем популяризовывать)
смотрел видео на х2, все равно казалось как то не так, скачал видео написал программу по принципу SOLID чтобы ускорить видео в 16 раз и вуаля, спасибо большое за такую подачу материала
на х32 всё ещё понятнее, рекомендую
Спасибо за простое, но понятное объяснение. У меня возник такой вопрос: можно ли (и является ли это рациональным) с помошью Fast API при запросе, выполнять какой то скрипт (к примеру парсер) или делать тригер для скрипта.
почему бы и нет, если задача именно в том, чтобы выполнить этот условный парсер и не хочется тратить кучу времени на разработку api для него, то это хороший вариант
На старом железе, для меня лучший VIM!
vim офигенный
Благодарю Вас за материал! Вы замечательный преподаватель, отличный, информативный контент! Выбираете очень важные и интересные темы!
спасибо)
Добрый день, вот уже не первый раз оставляю комент под видео) Спасибо большое за понятное объяснение) Вот смотрел видео по поводу Абстрактных классов, есть антагонист абстрактных классов это протоколы, очень хотелось бы послушать видео на эту тему, а также сравнения протоколов с абстракцией
добавил в свой список)
f.write(activity.json()) в методе post мне почему-то пайчарм перечеркивает. Метод parse_as_file, его сейчас нет в pydantic. Есть метод parse_obj, но он у меня тоже перечеркивается. Я так понимаю сам pydantic это делает почему-то
вот тут можно почитать про parse_file на основе которого потом строится parse_file_as (у вас в тексте комментария название parse_as_file неправильное, возможно в коде тоже и в этом как раз и проблема) - docs.pydantic.dev/1.10/usage/models/
запишите, пожалуйста, видео про протоколы дескрипоров
извиняюсь, можно ли подробнее объяснить смысл слова "интерфейс"...? (для новичков...) по смыслу его можно заменить на слово "описание" или это все же скорее шаблон для реализации методов в классах-наследниках?
в самом широком смысле интерфейс это просто набор описаний всех поведений класса (имена методов плюс количество аргументов в них), в более узком смысле можно трактовать имеено так, как вы написали, шаблон для реализации
@@pythonclinic спасибо!
Читаю комментарии капец какой то, все все поняли. Я сижу смотрю нихера не понимаю. Изначальная логика была непонятно. А когда эти принципы начались вообще стал копец. Для меня просто простыня кода туда сюда ездит. Если комментарии правдивы то мое поучение. Это же сколько всего надо в голове держать чтобы вносить изменения. У меня к сожалению такого образа не получается в голове создать, чтобы относительно него понимать что делать. Просто простыня. Хотя несколько курсов прошел на stepik по питону. И в принципе могу создавать там собачек кошечек могу по ооп, так еще как то информация в голове держится относительно которой можно делать изменения в логике. А такие сложные классы просто для меня простыня не могу это никак представить чтобы ориентироваться в коде. Как это у вас получатся...
вообще с опытом всё больше контекста в голове держать получается, я помню, как на начальных этапах тоже было сложно, но потом потихоньку втянулся
Спасибо большое. Вы большой МОЛОДЕЦ!!! Без вас не разобраться! А теперь всё просто и легко...Ну, где-то так))
спасибо)
Видео класс! Спасибо!
Учу питон на степике уже год, но часто сюда прихожу за конкретикой, хотел бы, чтобы у меня был такой преподаватель как ты. Ты единственный кто смог доходчиво объяснить мне про рекурсию и многие другие подводные камни. Больше всего мне по душе то, то диктор не торопится,объясняет все размеренно Спасибо огромное! Надеюсь, что в ближайшем будущем попаду на твой стрим)
спасибо большое за отзыв)
Афигенно, все объяснил, спасибо
Успешно пользовался PyCharm, пока дело не дошло до отладки в докере. Штош.
Dog.sit = sit zephyrka.sit() просто связать сразу с классом, тогда будет bound method sit
Спасибо за пример с принтером)
Плюсую про видео про hash таблицы, и их использование в словарях (и множествах).
Замечательно, вот и я дождался. Про hash таблицы тоже можно. Смотрел когда-то неплохое видео про это, но автор умеет понятно рассказать про непростые темы, поэтому, думаю будет многим полезно. Не знаю насколько это здесь в тему, интересно было бы послушать про паттерны программирования.
записано)
от себя хочу сказать, что с растущей популярностью пайтона из-за огромного количества курсов, которые обещают сделать из тебя супер пупер программиста, появилось очень много блогеров, которые создают контент ради контента, то есть пользы от их видео совершенно нет. Вроде видео посмотрел, но автор в нем ничего не рассказал, ничего не показал. Вы же один из тех блогеров, которые делают контент ради обучения, ради нас, подписчиков) Тема непростая, но я её смотрела с удовольствием только потому что пару лет назад на курсе на степике неделю мучалась над задачей со связным списком, ну не понимала я, а теперь смотрю и думаю, ну что тут сложного, все же так просто. Так вот к чему я, на ютубе пока нашла только несколько блогеров, которые интересно рассказывают о сложном, вы пока на первом месте у меня в этом топе. Очень сложные вещи рассказывать очень легко надо уметь. Большое вам спасибо за ваш труд. И конечно же очень жду видео по красно-черному дереву. Когда-то же оно должно показаться мне легким в понимании, надеюсь, вы и ваши будущие видео помогут в этом. А ещё ваши видео смотрятся очень быстро, тот момент, когда пятилетка за четыре года, а у вас 40 минут видео за 10 минут. Поэтому иногда даже хотелось бы побольше вас послушать, если будут у вас видео на 10 часов - я первая побегу смотреть))
спасибо большое за такой подробный отзыв, про дерево у меня записано, а насчёт 10 часов - подумаю))
Спасибо!
Большое спасибо за видео. Канал раскрывает очень важные темы, да и помогает сформировать питонячью картину мира.
Суппер, качество вырослов, так держать=) Раньше был очень интересный и полезный контент, а теперь и качество роликов подьехало🔥
учусь понемногу)) большое спасибо за отзыв
Привет от преданного фаната🎉 лайк подписка хорошему человеку!
спасибо))
Поставь super().__init__() в класс RunningBird(рекомендуется ставить перед кодом этого инита, чтобы инит спустился в самый низ) т.е. перед self.rn_speed = speed. Получится тоже поведение по mro без привязки конкретного имени класса. Спасибо за видео)
Ааааааа, ты волшебник!!,ты Ё**ный волшебник!!! Лайк + подписка