Зачем нужен TypeVar
32:26
Пишу на Python в ChatGPT
11:54
Пікірлер
@YeryaVahee
@YeryaVahee 2 күн бұрын
не могу импортировать router из base_commands.py. может кто знает в чем проблема? сделал все как на видео
@spawlovable
@spawlovable 2 күн бұрын
Супер, спасибо. Только я, почему-то, всегда делал первую задачу без if words_count[word] = words_count.get(word, 0) + 1
@SurenKhorenyan
@SurenKhorenyan 2 күн бұрын
Да, такой вариант тоже допустим, но требует лишних действий всё же
@stephan_inside
@stephan_inside 2 күн бұрын
Overlord - это аниме такое
@SurenKhorenyan
@SurenKhorenyan 2 күн бұрын
Ого, буду знать
@KUBD996
@KUBD996 2 күн бұрын
Самый годный ролик по FastAPI, спасибо за ролик и топовое объяснение!
@SurenKhorenyan
@SurenKhorenyan 2 күн бұрын
Пожалуйста! Очень рад, что вам понравилось 🥰
@Tosha-c7u
@Tosha-c7u 3 күн бұрын
Арминин? Привет из Эфиопии❤
@SurenKhorenyan
@SurenKhorenyan 2 күн бұрын
Привет!
@fleshka48
@fleshka48 3 күн бұрын
ты крут
@SurenKhorenyan
@SurenKhorenyan 2 күн бұрын
Спасибо большое! Очень приятно 🥰
@user-fm1552
@user-fm1552 3 күн бұрын
а как называется в документации PyCharm (Help - Keyboard Shortcuts PDF) действие дублирования исправлений в строках на 6:41 (ищу для mac это заветное сочетания клавиш, но пока безуспешно) ?
@IvaNFallout
@IvaNFallout 3 күн бұрын
Удерживайте Option ⌥ + Click в нужных позициях или двойной клик, чтобы выбрать несколько слов
@SurenKhorenyan
@SurenKhorenyan 2 күн бұрын
Здравствуйте, завтра на бусти выйдет большой ролик про сочетания клавиш Это на маке Ctrl + G, у вас это может быть alt + J В поиске select next occurrence
@user-fm1552
@user-fm1552 2 күн бұрын
@IvaNFallout , вот, то что искал, огромное спасибо!!! самое интересное, что такого сочетания клавиш у меня нет в Help - Keyboard Shortcuts PDF, установлен PyCharm 2024.1 (Professional Edition), mac версия...
@SurenKhorenyan
@SurenKhorenyan 2 күн бұрын
@@user-fm1552 пожалуйста!
@johnyelasto
@johnyelasto 3 күн бұрын
Братан умеет читать доку
@SurenKhorenyan
@SurenKhorenyan 3 күн бұрын
Спасибо!
@docaner
@docaner 4 күн бұрын
Это гениально: я после решения сложностью O(n^2) на js не понимал как решить за O(n).
@SurenKhorenyan
@SurenKhorenyan 3 күн бұрын
Хорошо, что удалось разобраться 😊
@mr.goldenman2403
@mr.goldenman2403 4 күн бұрын
мужик, ты реально крут
@SurenKhorenyan
@SurenKhorenyan 3 күн бұрын
Спасибо!
@Капибара-е2б
@Капибара-е2б 5 күн бұрын
Оно претворятся чтобы мы не раскусили его гениальность)
@SurenKhorenyan
@SurenKhorenyan 2 күн бұрын
Возможно!
@Pro-arm
@Pro-arm 5 күн бұрын
невозможно смотреть, прыгает из файла в файл , 20 минут видео про роутеры, але , видео про то как сделать кнопки
@SurenKhorenyan
@SurenKhorenyan 5 күн бұрын
Простите 😥 В новых роликах будет лучше
@SergeyKarpov-yx8bz
@SergeyKarpov-yx8bz 5 күн бұрын
Спасибо за решение! Подскажите, сколько времени займет решение такой задачи у человека, который не знает, как ее решать изначально? Мне кажется, это сложная задача и займет не менее 1 часа точно (т.е. на собесе вряд ли такое встретишь)
@SurenKhorenyan
@SurenKhorenyan 5 күн бұрын
Привет! Это довольно сложная задача, можно и вообще не решить, так как не знаком с данным типом задач. Час это ещё неплохо
@Паша-н9ь
@Паша-н9ь 7 күн бұрын
Супер, спасибо большое!
@SurenKhorenyan
@SurenKhorenyan 6 күн бұрын
Пожалуйста!
@arturfonmirt7263
@arturfonmirt7263 8 күн бұрын
Безопасность человек ставит на первое место. Возможно GPT задумался/ется о своей безопасности?
@SurenKhorenyan
@SurenKhorenyan 6 күн бұрын
но он же не человек
@BOSOZOKU-v2j
@BOSOZOKU-v2j 8 күн бұрын
@Сурен Хоренян подскажи пожалуйста. при запуске кода на 27.42 у меня выходит ошибка - AttributeError: module 'core.models.db_helper' has no attribute 'engine' ERROR: Application startup failed. Exiting. я понял что проблема в lifespan а именно когда я прописываю в main файле app = FastAPI(lifespan=lifespan). если прописать app = FastAPI() то хост запускается но таблица не создается, как решить эту проблему?
@SurenKhorenyan
@SurenKhorenyan 8 күн бұрын
Здравствуйте, у вас engine где-то в другом месте, не в db_helper
@Паша-н9ь
@Паша-н9ь 9 күн бұрын
great job !
@SurenKhorenyan
@SurenKhorenyan 8 күн бұрын
Thank you!
@IvanSoregashi
@IvanSoregashi 9 күн бұрын
Ну конечно, давайте ад зависимостей сделаем.
@SurenKhorenyan
@SurenKhorenyan 9 күн бұрын
А давайте!
@IvanSoregashi
@IvanSoregashi 9 күн бұрын
Я так понимаю Refresh Token автоматически браузером / OpenAPI никак не сохраняется? Надо подставлять руками, фронтом при обращении к /refresh?
@SurenKhorenyan
@SurenKhorenyan 9 күн бұрын
Да, refresh токен надо отправлять своими силами при обращении к /refresh.
@IvanSoregashi
@IvanSoregashi 9 күн бұрын
Т.е. на бэке мы никакой логики перенаправления гражданина с истекшим токеном на рефреш не делаем? Все фронт?
@SurenKhorenyan
@SurenKhorenyan 5 күн бұрын
Угу, это ответственность фронтенд приложения, когда работаем с подобным апи
@IvanSoregashi
@IvanSoregashi 9 күн бұрын
делать фабрику из двух функций это конечно зло. скромнее надо :D
@SurenKhorenyan
@SurenKhorenyan 9 күн бұрын
А мне не жалко!
@СашаАлександр-е4м
@СашаАлександр-е4м 9 күн бұрын
43:00 автор мененжко бредит. Всякие странные методы описывает. Просто нужно .env создать файл и потом через os.getenv("name of variable") писать. Ещё можно dotenv скачать, в этом пакете есть loadenv и findenv функции.
@SurenKhorenyan
@SurenKhorenyan 9 күн бұрын
Здравствуйте. Но ведь на этой метке я именно getenv и использую
@zion4d
@zion4d 9 күн бұрын
Вебхуки в фастапи писал, но что можно в доку добавить не знал. Лайк!
@thampasaurusrex3716
@thampasaurusrex3716 10 күн бұрын
лайк!
@SurenKhorenyan
@SurenKhorenyan 9 күн бұрын
Спасибо!
@anonasanonas1436
@anonasanonas1436 10 күн бұрын
походу в библиотеке сделали что-то с ChatActionSender, и он теерь не робит
@SurenKhorenyan
@SurenKhorenyan 10 күн бұрын
я посмотрю и разберусь. если вы добавите деталей, будет проще. что именно не работает?
@anonasanonas1436
@anonasanonas1436 10 күн бұрын
@SurenKhorenyan да не , все нормально, надо было просто почитать документацию. Импортировал из chataction вместо utils , как надо было
@SurenKhorenyan
@SurenKhorenyan 9 күн бұрын
Супер! Хорошо, что удалось разобраться
@YacobMonar
@YacobMonar 10 күн бұрын
Понятно всё но вот вопрос... Как говорящего звать то?
@SurenKhorenyan
@SurenKhorenyan 10 күн бұрын
Привет! Меня зовут Сурен 🙂
@YacobMonar
@YacobMonar 10 күн бұрын
@@SurenKhorenyan Надо будет на листочке записать, а то не запомню)
@SurenKhorenyan
@SurenKhorenyan 9 күн бұрын
Достаточно подписаться на канал, если ещё не 🙂
@x-notfound
@x-notfound 10 күн бұрын
Потрясающий материал, поздравляю, было бы еще лучше, если бы у него был дубляж ПТ-БР с новым функционалом KZbin
@SurenKhorenyan
@SurenKhorenyan 10 күн бұрын
Привет! Спасибо! Подскажите плиз, а какой дубляж вы бы хотели видеть? И точно ли новая фича доступна всем?
@x-notfound
@x-notfound 10 күн бұрын
@@SurenKhorenyan Добрый день! Я бразилец и слежу за вашим контентом. Благодаря вашим видео я многому научился работать с FastAPI. Я заметил, что в некоторых ваших видео на KZbin используются звуковые дорожки, созданные ИИ. Я понял, что это новая функция KZbin, но не уверен, доступна ли она всем. Было бы здорово, если бы ваш контент имел субтитры на бразильском португальском или такие звуковые дорожки.
@SurenKhorenyan
@SurenKhorenyan 9 күн бұрын
Любопытно! Я изучу это внимательнее. Если будет возможность, включу. Рад, что вам было полезно!
@Bit_Maximum
@Bit_Maximum 10 күн бұрын
Спасибо!
@SurenKhorenyan
@SurenKhorenyan 10 күн бұрын
Пожалуйста!
@Miron_Nicolaevich
@Miron_Nicolaevich 10 күн бұрын
Отличный материал🎉. Дальше следуя докам- web-socket ?
@SurenKhorenyan
@SurenKhorenyan 10 күн бұрын
Спасибо! Сейчас проверил, вебсокеты совсем не по соседству с докой 🤔 На эту тему тоже когда-то будет ролик, да
@dellream
@dellream 10 күн бұрын
Спасибо за видео, но область применения не ясна. Документация генерится не лучшим образом, так как вебхуки лежат отдельно от самих ручек, что неудобно. Да, можно маппиться через поиск и название, но поддерживать это довольно сложно в большой проекте. Сомнительно в общем, может, у кого-то есть мысли, как это использовать лучше, но без изменения опенапи схемы с громоздкими jsonами?
@SurenKhorenyan
@SurenKhorenyan 10 күн бұрын
Здравствуйте. Не понял, что там неудобного. Вебхуки это отдельная сущность. Это то, что шлёт приложение, а не что приложение принимает. Так что их дока в отдельной группе. А что поддерживать тут? Одну и ту же схему используете и для доки и для валидации. всё в одном месте меняется
@_epicfail_8092
@_epicfail_8092 10 күн бұрын
Материал топ. Сурен, есть в планах рассказать про вебсокеты ?
@SurenKhorenyan
@SurenKhorenyan 10 күн бұрын
Спасибо! Да, про вебсокеты в планах. Мб даже до лета выйдет. Но это не точно
@nto-i7h
@nto-i7h 10 күн бұрын
Сурен, благодарю за материал. Тема этого ролика навеяна недавними обсуждениями у тебя в чате.)))
@SurenKhorenyan
@SurenKhorenyan 10 күн бұрын
Пожалуйста! Хах, а насколько недавними? Материал отснят в ноябре 😁 Вполне возможно, уже и не припомню
@IvaNFallout
@IvaNFallout 10 күн бұрын
Сурен, огромное уважение за трудолюбие. Успехов ✊
@SurenKhorenyan
@SurenKhorenyan 10 күн бұрын
Спасибо большое! Очень приятно 🥰 Дальше - больше 💪
@rashidhajiyev2089
@rashidhajiyev2089 10 күн бұрын
Отличное видео. Хотел бы связаться с автором 😊
@SurenKhorenyan
@SurenKhorenyan 10 күн бұрын
Спасибо! Свяжитесь, все контакты в описании и в профиле
@user-buser_eto_ja
@user-buser_eto_ja 10 күн бұрын
Сразу лукас
@SurenKhorenyan
@SurenKhorenyan 10 күн бұрын
Спасибо большое!
@Bvceh
@Bvceh 10 күн бұрын
Первый
@SurenKhorenyan
@SurenKhorenyan 10 күн бұрын
Привет!
@glazevolda823
@glazevolda823 10 күн бұрын
Класс, спасибо 🙏 Максимально сжато и понятно 🔥🔥🔥
@SurenKhorenyan
@SurenKhorenyan 10 күн бұрын
Рад, что вам понравилось!
@IvanSoregashi
@IvanSoregashi 11 күн бұрын
А вот спасибочки за инфу.
@SurenKhorenyan
@SurenKhorenyan 10 күн бұрын
Пожалуйста!
@un.9bot325
@un.9bot325 11 күн бұрын
vim viw( Blen( Ireturn for<tab>... foren<tab>...
@SurenKhorenyan
@SurenKhorenyan 10 күн бұрын
если честно, я не понял..
@un.9bot325
@un.9bot325 6 күн бұрын
@SurenKhorenyan те же штуки, ток для вима) Естественно без постфиксов, а просто встроенными методами
@SurenKhorenyan
@SurenKhorenyan 5 күн бұрын
А, понял! Класс
@novichok3417
@novichok3417 11 күн бұрын
Вы конечно молодец , всё хорошо объясняете. Но есть один вопрос: а если не запускается терминал в программе, что делать? Им это проблема которую я так и не смог решить. Не могли бы вы создать новое видео про это. А сейчас дать несколько советов как мне решить этот вопрос.
@SurenKhorenyan
@SurenKhorenyan 11 күн бұрын
Здравствуйте. Спасибо. А что значит не запускается? Какие-то ошибки? Покажите пожалуйста. Можно скриншот прислать в чат в телеграм
@novichok3417
@novichok3417 10 күн бұрын
@SurenKhorenyan я мало пользуюсь телеграм и не знаю в какой чат или пост или как то называется послать скриншот
@ArtemVol-d3f
@ArtemVol-d3f 11 күн бұрын
Спасибо огромное за разборы! Самое интересное что когда отправляешь решение задачи где просто хранишь все элементы с их подсчитанными значениями и выводишь потом в результат где подсчитанное значение > 3, то показывает что программа работает намного быстрее (1 мс и beats 82%, 19.00 МБ), а когда хранишь 2 элемента, то (6 мс и beats 38%, 19.21 МБ)
@SurenKhorenyan
@SurenKhorenyan 10 күн бұрын
Пожалуйста! Хах, любопытно
@Саша0666-1
@Саша0666-1 13 күн бұрын
Чуваки я написал чату гпт загадку 1 буква х 2 буква й он написал хуменгуей а потом я написал IIIII и он написал х у ну вы поняли
@horse_butt
@horse_butt 14 күн бұрын
Спасибо за полезный и качественный материал 👍
@Fanflajok
@Fanflajok 14 күн бұрын
Честно, не понял, как обновляются страницы, если запустил через pycharm , редактируешь шаблон в вскоуд:)
@SurenKhorenyan
@SurenKhorenyan 13 күн бұрын
Здравствуйте. Само не обновится, нужно перезапускать браузер
@ArtemVol-d3f
@ArtemVol-d3f 14 күн бұрын
Вы делаете лучшее объяснение задач, когда у меня что-то не получается - вбиваю задачу в поиск ютуба и надеюсь что там будет ваш разбор, спасибо!
@SurenKhorenyan
@SurenKhorenyan 13 күн бұрын
Кайф, пожалуйста! Спасибо большое, очень приятно. Я рад, что вам нравятся мои разборы
@niktasha222
@niktasha222 14 күн бұрын
Отлично из-за тебя её уже ограничили
@SurenKhorenyan
@SurenKhorenyan 14 күн бұрын
Угу, причём довольно быстро. Так что я выпустил новые шортсы, можете поискать duckduckgo ai chat
@andrewmoon181
@andrewmoon181 15 күн бұрын
Идея для видео - - флаги - waffle - как разделить сеттинги, что бы не была портянка на пару тысяч строк - прокинуть request-id - ключ идемпотентности
@SurenKhorenyan
@SurenKhorenyan 15 күн бұрын
@@andrewmoon181 спасибо! Возьму на заметку
@yarmik3d
@yarmik3d 16 күн бұрын
Будь добр ответь на простой вопрос: - Зачем нам смотреть на твою рожу? Убери пожалуйста будь скромней и тогда люди к тебе потянутся. Не понимаю смысла когда ставят свою харю в кадр в уроках по кодингу, блогеры недоделанные.
@СеменХеруимов
@СеменХеруимов 17 күн бұрын
Вижу Сурена - сразу лайк :)
@SurenKhorenyan
@SurenKhorenyan 17 күн бұрын
Спасибо большое!
@timurotube
@timurotube 17 күн бұрын
Офигенно. Постоянно мучился с дебагом на джанге
@SurenKhorenyan
@SurenKhorenyan 17 күн бұрын
Теперь будет легче 🙂
@timurotube
@timurotube 17 күн бұрын
@@SurenKhorenyanСурен, а для фастапи и для фэлкона что-то подобное есть?
@SurenKhorenyan
@SurenKhorenyan 17 күн бұрын
@@timurotube нет. А зачем вам Фалкон вообще? Это же жуть какая-то, очень скудный и грустный фреймворк
@jerryjuice4499
@jerryjuice4499 17 күн бұрын
​​@@SurenKhorenyan решил полюбопытствовать, есть Fast API Debug Toolbar, пишет сделано на основе Django'вского. Так же подключается через middleware, выглядит похоже, sql к алхимии подключается. Думаю, что там что-то оч упрощённое. Завтра в докере на каком нибудь проектике пощупаю. Любопытно стало.
@SurenKhorenyan
@SurenKhorenyan 16 күн бұрын
@@jerryjuice4499 любопытно, надо будет посмотреть, спасибо за наводку
@PlagueisMKII
@PlagueisMKII 17 күн бұрын
Привет, а почему poetry, а не uv?
@SurenKhorenyan
@SurenKhorenyan 17 күн бұрын
@@PlagueisMKII привет! Не вижу причин использовать uv. Пока что.
@andrewmoon181
@andrewmoon181 15 күн бұрын
@@SurenKhorenyan Ай-ай-ай. Не хорошо так. Так и костенеют. Поясню - вот топит Сурен против микросервисов, глобалов - это он делает хорошо. А вот когда Сурен начинает костянеть - это уже не хорошо. Так привык - ну это самый отстойный аргумент. Может кто-то к глоблам привык. А кто-то писать код без анотаций. Но мы же тут собрались хорошие инженеры. И если тайп хинтинги повышают качество кода - это же хорошо? И если uv тоже повышает качество разработки - это же тоже хорошо? Мы же тут расказываем не про то, как мы привыкли. А про то, как делать хорошо?
@SurenKhorenyan
@SurenKhorenyan 15 күн бұрын
@@andrewmoon181 как uv повышает качество вашего кода в сравнении с poetry? Пока что это слишком сырой инструмент. Рано его использовать, когда есть стабильные инструменты.
@andrewmoon181
@andrewmoon181 15 күн бұрын
@@SurenKhorenyan Ну то что сыроват - да, согласен. Но уже можно использовать. Я не говорил про качество кода. А вот качество разработки - повышает. Быстрота, замена Poetry and pyenv, and more. My previous workflow for managing Python projects relied on a combination of Poetry, pipx, and pyenv, with Poetry as the core and most complex component. While this toolchain was likely the best option before uv reached maturity, some concerns arose around its long-term viability for maintaining large projects. Though there are uncertainties about uv and ruff’s future due to Astral’s venture funding and potential monetization needs, I’m equally concerned about Poetry’s pace of updates and ongoing feature development. The creator of Poetry no longer appears actively involved in its development, having shifted focus to new projects. Active development in Poetry also appears limited, particularly when examining recent release activity (see Figures 1 and 2). Since the end of February, there have been few, if any, feature updates, with almost a year passing without substantial changes. In contrast, uv has shown a markedly faster pace of development (see Figures 3 and 4). While adopting uv has its risks, relying on Poetry for large projects may introduce different but equally concerning challenges for long-term maintenance.
@SurenKhorenyan
@SurenKhorenyan 5 күн бұрын
Это вы откуда скопировали? Прикладывайте ссылки хоть