Python Clinic

Python Clinic

Привет, меня зовут Никита Царевич, и я в IT больше 10 лет. Я занимаюсь архитектурой, управляю командами, но в первую очередь я инженер-программист. Уже несколько лет веду курсы по Python, и знаю, как и чему обучать людей с разным бэкграундом и опытом. Могу рассказать о Python и программировании так, что даже babushka поймёт.

Потоки в Python

Потоки в Python

Пікірлер

  • @Artem36
    @Artem3621 сағат бұрын

    Все очень качественно объяснено, спасибо за материал

  • @arinawitch6928
    @arinawitch692823 сағат бұрын

    Спасибо за такой качественный разбор принципов, очень помогло расставить точки над i. и да, преподавание в европейском университете - это круто!!!

  • @pythonclinic
    @pythonclinic14 сағат бұрын

    спасибо за отзыв)

  • @Artem36
    @Artem362 күн бұрын

    Привет на 21:28 подразумевается ведь параллельное выполнение?

  • @pythonclinic
    @pythonclinic2 күн бұрын

    в этом примере да, можно назвать параллельным

  • @denismerigold486
    @denismerigold4862 күн бұрын

    2:25 - Не совсем. Они должны быть Hashable, а не Immutable. Например, у нас есть такой кортеж: names = ('Cler', 'Teresa', ['Raki']). Будет ли наш кортеж неизменяемым? Да, ведь с точки зрения питончика мы не можем его изменить. Можем ли мы его use в качестве key в dict? Нет, мы сразу получим ошибку: TypeError: unhashable type.

  • @pythonclinic
    @pythonclinic2 күн бұрын

    всё так, но в этом видео не хотелось лезть в такие детали, спасибо, что обратили внимание

  • @denismerigold486
    @denismerigold486Күн бұрын

    @@pythonclinic Я понимаю, что ваш канал не для новичков, поэтому об этом стоило упомянуть. Ну да ладно, отличная лекция :) Ничего подобного 3 года назад в ру-сегменте не было.

  • @konstantinlisitsa8443
    @konstantinlisitsa84433 күн бұрын

    Как всегда информативное, интересное видео. Спасибо вам за ваш труд! Ждем новых видео с интересными темами)

  • @nikolaym2833
    @nikolaym28333 күн бұрын

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

  • @konstantinlisitsa8443
    @konstantinlisitsa84433 күн бұрын

    Лучшие видео по питону! Манера, голос, подача материала - просто на высшем уровне. Плюс интересные темы. Непонятно почему так мало подписчиков. Каждое видео дико интересно. Какой-то педагогический талант у гражданина.

  • @user-if1dj7fy2y
    @user-if1dj7fy2y5 күн бұрын

    Браво браво Звучит интересно 🎉❤ А когда будет продолжение этой темы разговора подробнее 😮

  • @pythonclinic
    @pythonclinic4 күн бұрын

    есть ещё несколько видео на канале)

  • @sladge17
    @sladge175 күн бұрын

    Спасибо за видео, замечу, что вместо объекта defaultdict в представленном примере, можно использовать метод setdefault обычного словаря, если я правильно понял.

  • @pythonclinic
    @pythonclinic5 күн бұрын

    а ещё метод get тоже подойдёт)

  • @MrLotrus
    @MrLotrus5 күн бұрын

    А еще для подобных задач стоит обратить внимание на collections.Counter

  • @user-of2nh9ho5n
    @user-of2nh9ho5n8 күн бұрын

    2 года пишу на питоне и только сейчас до конца понял как это работает. Автору спасибо!

  • @perfa8527
    @perfa85278 күн бұрын

    Спасибо большое за новое видео Как всегда познавательно и актуально.

  • @flower-py
    @flower-py8 күн бұрын

    Возвращение легенды

  • @pythonclinic
    @pythonclinic8 күн бұрын

    очередное))

  • @igormatveev8355
    @igormatveev83558 күн бұрын

    Отличное видео)

  • @za_rekoi
    @za_rekoi8 күн бұрын

    Спасибо огромное, тема очень интересная и полезная. Это прям то что нужно знать!

  • @vano03voin
    @vano03voin8 күн бұрын

    Поздравляю всех подписчиков клиники с новым видео🎉 ведущий как всегда свеж и приносит в наш мир знание! Лайк коммент подписка)❤

  • @denispoludennov6271
    @denispoludennov627113 күн бұрын

    сяб

  • @mihailevtyugin3019
    @mihailevtyugin301913 күн бұрын

    Ну так то log2(n) может быть < 1 при значениях n (0;2), так что при значениях 1 скорость роста будет больше просто у n)))

  • @bbbbbb9193
    @bbbbbb919314 күн бұрын

    Спасибо за такой обзор!!! Лайк. Сил и Энергии!!!

  • @MrSunTrope
    @MrSunTrope21 күн бұрын

    А если объект 1мб он поделится на 4 арены? как произойдёт запись?

  • @pythonclinic
    @pythonclinic8 күн бұрын

    не, не поделится, большинство объектов в пайтон относятся к сложно устроенным ссылочным типам данных, части которых не будут превышать лимит и они будут хранится в разных аренах

  • @MrSunTrope
    @MrSunTrope22 күн бұрын

    Крутой урок и музыка на фоне огонь, выложи плиз код куда нибудь

  • @igormatveev8355
    @igormatveev835524 күн бұрын

    Не буду распыляться: все круто. Однако есть одна просьба. Возможно, это только моя потребность, однако мне бы хотелось иметь ссылку на репозиторий с 2 вариантами данного кода (исходный и конечный), так было бы удобнее ориентироваться в том, что мы видим на видео. Часто при просмотре видео терялся в стремительном перемещении в файле, плюс ускоренный монтаж. Как дополнительная навигация и возможность пошагово явно повторить все преобразования в видео. Спасибо!

  • @pythonclinic
    @pythonclinic24 күн бұрын

    это хорошая идея, я подумаю, возможно новые видео будут выходить с репозиториями

  • @igormatveev8355
    @igormatveev835522 күн бұрын

    @@pythonclinic было бы круто, в любом случае - спасибо! Кстати, хотим отдельное видео о внедрении зависимостей в python)) Я только учусь, поэтому мне интересно получать подобную информацию от специалистов высокого уровня (плюсом к другим источникам знаний и формам его получения)!

  • @igormatveev8355
    @igormatveev835520 күн бұрын

    @@pythonclinic Кстати говоря, хотел уточнить, а где можно увидеть Вас в качестве преподавателя?

  • @Scr1pted
    @Scr1pted24 күн бұрын

    ОО НАШ ЧЕЛОВЕК, КАК ТАМ ТВИЧ ТВОЙ?

  • @pythonclinic
    @pythonclinic24 күн бұрын

    хех, не хватает времени к сожалению на твич, может летом придумаю что-то)

  • @Scr1pted
    @Scr1pted23 күн бұрын

    @@pythonclinic давай давай, это я кстати, помнишь про чела болтали на ютубе, который про языки рассказывает, FireShip вроде бы

  • @Zoly
    @Zoly26 күн бұрын

    Нафиг жидбрейнс, нафиг жидбрейнс, нафиг. Для новичка этот кал не подойдет абсолютно никак, потому что лучше разобраться в нужности чего-либо самому чем, нажимая две кнопки, принимать неосмысленно все советы и исправления ide. В комментах отмечали удобное создание окружения и подсказки pep'a с авто-форматированием, рефакторингом и авто-импортами. Крутые "киллерфичи", но что вы будете делать, когда в один прекрасный момент что-то из этой "красоты" отрыгнет, как в моей ситуации - после одного из апдейтов у меня отвалилась авто-активация окружения (не работала даже через командную строку и я познал все прелести приседаний вокруг их продукта, очистки системных папок, смены терминалов, пересоздания окружений и прочей чепухи, при этом таких, как я, оказалось приличное количество и приседали они тоже не один день). Одна из нелогичных вещей для новичка, которую выдает пайчарм - добавление текущей рабочей директории в переменные среды окружения(os.environ) при запуске любого питонячего файла, в отрыве от ide новичок долго будет чесать репу почему у него не сработают импорты, хотя окружение активировано. Абсолютно перегруженная, уродливая, моноязычная, лишенная даже простейшей возможности открывать jupyter notebook файлы в бесплатной версии (sic!), экосистемно бедная, спрятавшая нужную функциональность за paywall'ом ide. Чего стоит только жалкая попытка скопировать vscode со своим fleet. Поэтому сбежал, сбежал от этого кала в vscode. Большая часть фич пайчарма имеется, что-то работает так же, что-то хуже(безумный авто-импорт, например, или рефакторинг). Да, придется повозиться с настройкой всего под себя, что-то сначала не так удобно и привычно, так как это большой конструктор с миллионом опций, но это время не будет потрачено напрасно.

  • @Enerdzizer
    @EnerdzizerАй бұрын

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

  • @user-fc2ug5bd5t
    @user-fc2ug5bd5tАй бұрын

    каким бы быстрым он ни был, он так и остается никому не нужным

  • @pythonclinic
    @pythonclinicАй бұрын

    будем популяризовывать)

  • @northFOREST9ty
    @northFOREST9tyАй бұрын

    смотрел видео на х2, все равно казалось как то не так, скачал видео написал программу по принципу SOLID чтобы ускорить видео в 16 раз и вуаля, спасибо большое за такую подачу материала

  • @pythonclinic
    @pythonclinicАй бұрын

    на х32 всё ещё понятнее, рекомендую

  • @teodorchaly184
    @teodorchaly184Ай бұрын

    Спасибо за простое, но понятное объяснение. У меня возник такой вопрос: можно ли (и является ли это рациональным) с помошью Fast API при запросе, выполнять какой то скрипт (к примеру парсер) или делать тригер для скрипта.

  • @pythonclinic
    @pythonclinicАй бұрын

    почему бы и нет, если задача именно в том, чтобы выполнить этот условный парсер и не хочется тратить кучу времени на разработку api для него, то это хороший вариант

  • @user-tr4qy1ji7x
    @user-tr4qy1ji7xАй бұрын

    На старом железе, для меня лучший VIM!

  • @pythonclinic
    @pythonclinicАй бұрын

    vim офигенный

  • @DP_AS
    @DP_ASАй бұрын

    Благодарю Вас за материал! Вы замечательный преподаватель, отличный, информативный контент! Выбираете очень важные и интересные темы!

  • @pythonclinic
    @pythonclinicАй бұрын

    спасибо)

  • @vladdragunov5526
    @vladdragunov5526Ай бұрын

    Добрый день, вот уже не первый раз оставляю комент под видео) Спасибо большое за понятное объяснение) Вот смотрел видео по поводу Абстрактных классов, есть антагонист абстрактных классов это протоколы, очень хотелось бы послушать видео на эту тему, а также сравнения протоколов с абстракцией

  • @pythonclinic
    @pythonclinicАй бұрын

    добавил в свой список)

  • @user-nu3ot7td1j
    @user-nu3ot7td1jАй бұрын

    f.write(activity.json()) в методе post мне почему-то пайчарм перечеркивает. Метод parse_as_file, его сейчас нет в pydantic. Есть метод parse_obj, но он у меня тоже перечеркивается. Я так понимаю сам pydantic это делает почему-то

  • @pythonclinic
    @pythonclinicАй бұрын

    вот тут можно почитать про parse_file на основе которого потом строится parse_file_as (у вас в тексте комментария название parse_as_file неправильное, возможно в коде тоже и в этом как раз и проблема) - docs.pydantic.dev/1.10/usage/models/

  • @arinawitch6928
    @arinawitch6928Ай бұрын

    запишите, пожалуйста, видео про протоколы дескрипоров

  • @arinawitch6928
    @arinawitch6928Ай бұрын

    извиняюсь, можно ли подробнее объяснить смысл слова "интерфейс"...? (для новичков...) по смыслу его можно заменить на слово "описание" или это все же скорее шаблон для реализации методов в классах-наследниках?

  • @pythonclinic
    @pythonclinicАй бұрын

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

  • @arinawitch6928
    @arinawitch6928Ай бұрын

    @@pythonclinic спасибо!

  • @user-rg6dg4ip8b
    @user-rg6dg4ip8bАй бұрын

    Читаю комментарии капец какой то, все все поняли. Я сижу смотрю нихера не понимаю. Изначальная логика была непонятно. А когда эти принципы начались вообще стал копец. Для меня просто простыня кода туда сюда ездит. Если комментарии правдивы то мое поучение. Это же сколько всего надо в голове держать чтобы вносить изменения. У меня к сожалению такого образа не получается в голове создать, чтобы относительно него понимать что делать. Просто простыня. Хотя несколько курсов прошел на stepik по питону. И в принципе могу создавать там собачек кошечек могу по ооп, так еще как то информация в голове держится относительно которой можно делать изменения в логике. А такие сложные классы просто для меня простыня не могу это никак представить чтобы ориентироваться в коде. Как это у вас получатся...

  • @pythonclinic
    @pythonclinicАй бұрын

    вообще с опытом всё больше контекста в голове держать получается, я помню, как на начальных этапах тоже было сложно, но потом потихоньку втянулся

  • @marynasamonenko7302
    @marynasamonenko7302Ай бұрын

    Спасибо большое. Вы большой МОЛОДЕЦ!!! Без вас не разобраться! А теперь всё просто и легко...Ну, где-то так))

  • @pythonclinic
    @pythonclinicАй бұрын

    спасибо)

  • @Nfix106
    @Nfix106Ай бұрын

    Видео класс! Спасибо!

  • @vladdragunov5526
    @vladdragunov5526Ай бұрын

    Учу питон на степике уже год, но часто сюда прихожу за конкретикой, хотел бы, чтобы у меня был такой преподаватель как ты. Ты единственный кто смог доходчиво объяснить мне про рекурсию и многие другие подводные камни. Больше всего мне по душе то, то диктор не торопится,объясняет все размеренно Спасибо огромное! Надеюсь, что в ближайшем будущем попаду на твой стрим)

  • @pythonclinic
    @pythonclinicАй бұрын

    спасибо большое за отзыв)

  • @MrSunTrope
    @MrSunTropeАй бұрын

    Афигенно, все объяснил, спасибо

  • @vater122
    @vater122Ай бұрын

    Успешно пользовался PyCharm, пока дело не дошло до отладки в докере. Штош.

  • @MrSunTrope
    @MrSunTropeАй бұрын

    Dog.sit = sit zephyrka.sit() просто связать сразу с классом, тогда будет bound method sit

  • @user-kk9sp2ln6x
    @user-kk9sp2ln6xАй бұрын

    Спасибо за пример с принтером)

  • @sladge17
    @sladge172 ай бұрын

    Плюсую про видео про hash таблицы, и их использование в словарях (и множествах).

  • @dmitrymorozov3038
    @dmitrymorozov30382 ай бұрын

    Замечательно, вот и я дождался. Про hash таблицы тоже можно. Смотрел когда-то неплохое видео про это, но автор умеет понятно рассказать про непростые темы, поэтому, думаю будет многим полезно. Не знаю насколько это здесь в тему, интересно было бы послушать про паттерны программирования.

  • @pythonclinic
    @pythonclinic2 ай бұрын

    записано)

  • @user-nu3ot7td1j
    @user-nu3ot7td1j2 ай бұрын

    от себя хочу сказать, что с растущей популярностью пайтона из-за огромного количества курсов, которые обещают сделать из тебя супер пупер программиста, появилось очень много блогеров, которые создают контент ради контента, то есть пользы от их видео совершенно нет. Вроде видео посмотрел, но автор в нем ничего не рассказал, ничего не показал. Вы же один из тех блогеров, которые делают контент ради обучения, ради нас, подписчиков) Тема непростая, но я её смотрела с удовольствием только потому что пару лет назад на курсе на степике неделю мучалась над задачей со связным списком, ну не понимала я, а теперь смотрю и думаю, ну что тут сложного, все же так просто. Так вот к чему я, на ютубе пока нашла только несколько блогеров, которые интересно рассказывают о сложном, вы пока на первом месте у меня в этом топе. Очень сложные вещи рассказывать очень легко надо уметь. Большое вам спасибо за ваш труд. И конечно же очень жду видео по красно-черному дереву. Когда-то же оно должно показаться мне легким в понимании, надеюсь, вы и ваши будущие видео помогут в этом. А ещё ваши видео смотрятся очень быстро, тот момент, когда пятилетка за четыре года, а у вас 40 минут видео за 10 минут. Поэтому иногда даже хотелось бы побольше вас послушать, если будут у вас видео на 10 часов - я первая побегу смотреть))

  • @pythonclinic
    @pythonclinic2 ай бұрын

    спасибо большое за такой подробный отзыв, про дерево у меня записано, а насчёт 10 часов - подумаю))

  • @genobr
    @genobr2 ай бұрын

    Спасибо!

  • @perfa8527
    @perfa85272 ай бұрын

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

  • @user-xr2vl5wo7w
    @user-xr2vl5wo7w2 ай бұрын

    Суппер, качество вырослов, так держать=) Раньше был очень интересный и полезный контент, а теперь и качество роликов подьехало🔥

  • @pythonclinic
    @pythonclinic2 ай бұрын

    учусь понемногу)) большое спасибо за отзыв

  • @vano03voin
    @vano03voin2 ай бұрын

    Привет от преданного фаната🎉 лайк подписка хорошему человеку!

  • @pythonclinic
    @pythonclinic2 ай бұрын

    спасибо))

  • @KiryaGkey
    @KiryaGkey2 ай бұрын

    Поставь super().__init__() в класс RunningBird(рекомендуется ставить перед кодом этого инита, чтобы инит спустился в самый низ) т.е. перед self.rn_speed = speed. Получится тоже поведение по mro без привязки конкретного имени класса. Спасибо за видео)

  • @user-pr1zp2yv6r
    @user-pr1zp2yv6r2 ай бұрын

    Ааааааа, ты волшебник!!,ты Ё**ный волшебник!!! Лайк + подписка