Собеседование подписчика Trainee Python Developer

Подготовка к собеседованию на Python Developer

Транскрипция видео:

  • Всем привет дорогие друзья сегодня у нас необычный формат сегодня не меня собеседуют а собеседую я с нами Вячеслав Здравствуйте Легенда пайтона Junior Сегодня мы будем проводить очень лайтовый Собес самый первый из первых вот вопрос будут максимально легкими ничего сложного вообще не будет так что не надо писать что-то Нужно не пройдешь и так далее сегодня просто тестовый легкий собесек я буду использовать в этот раз наш любимый Google Clash где есть просто минимально расписанные вопросы а потом буду что-то задавать

    00:00:00 - 00:01:35

  • свои головы и конечно у нас будет кодом Если вы хотите пройти такой же собеседование со мной то у нас есть в описании ссылка на Telegram группу и там есть закрепленных сообщениях формате которые нужно заполнить и тогда Да скорее всего собеседование Итак Давай начнем Я обожаю этот вопрос менять надо заходить или за то что я сет назвал неизменяем да да и я полюбил этот вопрос за это теперь ошибаться вообще нельзя даже специально Давай типа данных с головы может не читать с этой доки То есть хорошо А типа данных есть

    00:00:47 - 00:02:20

  • изменяемые если изменяемые типы данных а неизменяемые это числа строки потом считается или Да это типа изменяемые это листы Dictionary Set Это по-моему столько редкая штука Я не помню смотри в пайтоне есть такая штука Как Magic методы Да ну их так называют вообще кто-то называет дандер дандер методы в основном данных методами почему-то у нас Их назвали мэджиками Но неважно Вот что ты можешь рассказать про самые методы как они по это не работают Зачем они вообще нужны насколько я знаю они вызываются не явно

    00:01:37 - 00:03:07

  • вообще сами по себе они прописываются сначала 2 нижних подчеркивания в конце прописываются Вот и с помощью них ты можешь переопределять некоторые методы это очень поверхностно давай [музыка] хорошо направляю вообще методы они ими можно пользоваться их можно переопределять можно все что угодно с ними делать это те же самые обычные методы класса но поэтому них есть такое главное предназначение принципе не вот практически все объекты да Как зачем нам Дан Интер методы если вот все объектов Зачем может все это

    00:02:47 - 00:04:20

  • соединить вместе чего конкретно Тандер методы Ну даже на примере цикла форм Где в цикле for используется данными но он по идее вызывается не явно там есть который да да Next есть И по моему нет это идет Не там на nexton типа ты можешь переопределить и изменить поведение функции for Нет ну помощью переписывания как раз этого но предприятие его совершенно не нужно форм принципе работает нормально но принципе вот например лист Да это так сказать такая штука как бы это и то рыбу Да мы понимаем что лист это

    00:03:40 - 00:05:20

  • такая последовательность по которой мы италируем всего листа есть ИТР да то есть тот же самый класс у которого если стало не вести этого у него есть next и ты фори как бы нету такого что for просто берет и что-то делает for каждый раз накладывает метод Next Вот и принципе все это взаимодействие растягивается на весь Python то есть Ну например если ты там используешь операторы эквал да то есть пользуется данными то есть и там Left сравнение все это Давай пойдем дальше тоже базовый вопрос генераторы в чем разница

    00:04:30 - 00:05:57

  • итератор это объект которого содержит в себе как раз эти два тандермета next и генератор это как раз подвид итератора Вот который создается путем вызова функции которая содержит в себе елт елд это Почти то же самое что и Return только елд хранит в себе последний элемент переданный вот как-то так хорошо Ты когда-нибудь пробовал свой генератор там например написал Для чего списка вы какой-то генератор конечно писал использовал но словарный и сетча генераторы есть написал когда проходил всякие курсы

    00:05:15 - 00:07:00

  • да Мы кстати что-то сразу перешли к вопросам и совершенно не проговорили твой опыт Давай если ты позволишь а то у меня нет никакого плана собеседования сразу технической части Давай вообще сначала поговорим про то что ты учил Какой твой путь Да можешь рассказать сколько ты да свой путь война Сколько ты времени изучаешь поэтому Какие курсы Ты проходил Какой у тебя там Опыт есть и так далее я начал изучать поэтому примерно летом в начале лета прошлого года конкретно осознанно это начал проходить свой первый курс Это был

    00:06:12 - 00:07:36

  • поколение пайтон за счет того что оно было бесплатно прошел сначала курс для начинающих чтобы изучить синтаксис самое базовая какие-то функции тому подобное Вот Потом я прошел уже курс тоже У меня пайтон тоже на степпике прошел уже для продвинутых там уже было немножко углубленно протягивает эти как раз декораторы генераторы декораторы все такое вот после этого я у меня была работа вот меня Брат попросил разработать для него телеграм Бота Вот и просто там администрировать сайты заниматься всякой

    00:06:54 - 00:08:26

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

    00:07:40 - 00:09:02

  • каждый день учусь 45 часов всякие разные приборки Вот и начал определился на фреймворке джанга потом после того как я определился Джана нашел на юдаме курс собственно говоря про Джанго прошел там курс достаточно неплохой курс из-за него правда заплатил 15 долларов по акции был Прошел курс после этого наткнулся на твой канал собственно говоря попал в Это прекрасное сообщество поэтому программистов вот из того момента вот общаясь с людьми попытнее которые дают мне советы прохожу с ними какие-то вопросики и тому подобное

    00:08:20 - 00:09:50

  • именно в чате и параллельно изучаю фреймворки всякие и понял первый курс да поколение поэтому сколько я понял Я просто пора упоминание слышал что-то рассказать почувствовал прибавилась или или нет понимание и вот именно любви к именно к пайтану что я определился вот с того момента что вот именно этим я хочу дальше заниматься после именно прохождения курса потому что я до этого впитался в Университете на компьютерной инженерии Вот она преподают разные абсолютно предметы все поверхностно и мне это абсолютно ничего не нравилось и

    00:09:06 - 00:10:33

  • заниматься соответственно мне этим тоже не очень хотелось А вот после прохождения как раз курса по этому первому Я как раз полюбил этот язык Мне он очень сильно понравился я понял что хочу именно развиваться в нем вот там достаточно Все просто много очень практики было Вот и всё неплохо так запоминалось там типа тоже Поэтому преподают или так чисто я сейчас Ну я сейчас на третьем вот третий курс заканчиваю но у меня еще поэта не было у меня были оси Java плюсы JavaScript а немного было ассемблерки знаешь и поэтому пока еще до

    00:09:56 - 00:11:07

  • еще покататься в этом сей проблема университета если честно вот честно говоря сейчас вот конкретно когда я уже Немного углубился поэтому то мне даже стало интересно общаться с преподавателем показывается крутой мужик преподает опыт работы у него есть хороший Вот и вот с ним я пообщался и когда сел делать лабораторки пожары Мне прям понравилось Я начал это вникать приятно когда понимаешь Ну туда принципе люди поняли твой опыт Я видел заявки 9 месяцев до изучения января так разлагал нет Алё на прием

    00:10:42 - 00:12:19

  • да Да вроде все разлагало уже вот Но получается 9 месяцев у тебя опыта Ну да это самого первого дня как ты решил изучать поэтому Ну плюс-минус какой сейчас Март заканчивается Ну да 9 10 месяцев Хорошо Ну тогда давай продолжим нашу техническую часть листочка этого сейчас закончится и мы перейдем к фреймам вот ну еще поговорим немножко про потоки Да мульти процессинг смотри Следующий вопрос максимально лайтовый Python интерпретируемый или компьютерный почему он интерпретируем потому что поэтому перерабатывают код

    00:12:05 - 00:13:50

  • сначала в байт-код а потом в этот байт-код передается в сипай там по моему это так называется и он уже реализуется А не а интерпрета а компилируем это по-моему когда сразу в машинный код переписывается Многие люди почему-то считают что поэтому компилируемые но почему-то скорость компилируемых языка у него внутри есть такой шаблон интересно синглтон да что вообще это такое как бы ты честно я читал про это Ну это вообще-то программирования Давайте подсказку тебя ты делаешь Класс так Да чтобы у него был только

    00:13:14 - 00:14:56

  • один экземпляр но экземпляр instance Да ты понял чем мне нужно так разработать класс чтобы у него был только один экземпляр Да ты не можешь сделать девочку один девочка два и там девочку синими волосам девочку с красным у тебя будет ты создал девочку с красными волосами у тебя в коде вот везде где этот класс используется у тебя вот будет девочка с красными волосами и ты вот айдишник там в памяти она все время будет одно не добавится Я не знаю честно я читал я не использовал сделать вот но самый

    00:14:16 - 00:15:34

  • элементарный это использовать переопределение дандер метонил знаешь за что дандерметр не отвечает Да он контролируется здание нового экземпляра А и нет контролирует как раз его инициализации хорошо Что такое 8 8 это у меня классное соглашение всех программистов по дизайну кода Ну да А ты вообще как-то придержусь ему Те есть какие-то лидеры или стандартный автопод 8 стоит это как я пробовал Black использовать он там вроде бы погружается человек которого есть даже искусственный интеллект или это не то вроде бы не

    00:15:04 - 00:16:54

  • уверен если чаще всего все его используют он есть там ряд минус Да вроде было не как стенд как Ну ты можешь его пипами ставить в принципе и дальше ты будешь его использовать Ну vs код может подтянуть Black и у тебя будет там когда ты прав такой мыши нажимаешь у тебя там форма не знаю на каком языке у тебя она но у меня тоже есть выделяют типа у меня форматировать документ с помощью Да ну вот можно подключить Black и он прям очень хорошо все будет форматировать В разработке зачастую Black ставится

    00:16:08 - 00:17:31

  • хуком да то есть когда ты делаешь КАМиТ то у тебя прогоняется все эти програмки То есть например там знаешь есть типизация впаять такая штука и так далее есть библиотека май пай которая как раз таки все таки пизацу проверяют то есть по фактузируем языке возвращаемся вот я считаю не на всех этих проектах нужно Ну например если это проект на fastapi то как бы нужно вот и естественно Мы типизация прогоняется в этих приковитах Black тесты не тесты не прогоняется это уже лишние вот это все равно прогоняется чтобы у тебя

    00:16:53 - 00:18:21

  • все было хорошо да Перед созданием комита то есть вот но потом это все идет ветку на естественно ты же знаешь как работает слово это не Что это Это методология работы с гитом То есть gitflow это правда в принципе понятие что у тебя например Светка мастер да ребятишкам открою getflow просто Image чтобы люди понимали Вот они бывают максимально разными разных команд и так далее у них там есть фичи бранчи Ну знаешь есть как бы из девело бренча есть мастер бранчи есть бранча свечами понимаешь разделяется все это Да и ты вот когда

    00:17:43 - 00:19:18

  • работаешь на определенной задачей ты создаешь отдельную бранью и делаешь мэрж или куда тебе нужно вот и тогда кстати знаешь такой сквозь сквош Что такое гипс Корж не знаю это когда ты берешь кометы и их сплюскиваешь в один вот у тебя получается сразу ну ты например когда делаешь мерч Ты можешь Ну даже взять лап ты можешь скворкнуть даже автоматически через gitlab все свои кометы у тебя ветки там допустим девелопмент у тебя места всех твоих коммитов Да хотя бы один прекрасный конец и он просто будет

    00:18:43 - 00:20:18

  • так сказать все твои изменения связанные изменять Проблема в том что меня еще не было опыта и потребностей как бы использовать такое Да поэтому немножко чуть вдали зашел чуть-чуть объяснил чтобы ты вообще понимал как разработка идет вот сейчас уже рассказать архитектуры Это уже далеко я зашел Давай вернемся ближе поэтому есть такая штука Как рейтинг есть штука Как мульти процесса чем между ними разница как это вообще устроено вот с этим конечно у меня проблемы я это еще не сильно звучал Ну я знаю что в

    00:19:30 - 00:21:11

  • пайтоне реализован жил это Global сейчас интерпретирую Global interpreter Лол сейчас короче что она запрещает разветвляться потоком идет только по одному главному потоку Ну поочередно делается Ну на самом деле она не идет по главному потоку оно управляет как раз такими как раз таки локами потоков Да и в пайтоне ты по факту не имеешь мультипоточности джил именно на имплементации сипайтона вот он говорит что на уровне интерпретатора твой кот как бы tresave полностью он безопасный потому что у тебя все идет последовательно То есть

    00:20:20 - 00:22:15

  • все изменения последовательно у тебя не может быть там ну я так понимаю вот тебя не будет кондишна то есть потоки не будут драться за изменение какой-то там информации и нарушать другую работу в этом и безопасности То есть ты принципе когда пишешь на байтами на оси Поэтому ты особо за это не паришься пока пока работает жил вот в этом вся его суть Давай возвращаться к 3D в чем разница хотя бы между этими два отдельных модуля поэтому как они различаются Я даже не знаю просто об этом сказать я вот сейчас нахожусь на стадии изучения

    00:21:19 - 00:22:44

  • асинхронного программирования и особо рассказать поэтому это не синхронное программирование совершенно не асинхронично нет нет даже нет я просто честно говоря не когда с этим даже не стыкался Вот и когда чтобы это мне нужно было поэтому я думал что это все относится к синхронному программированию что там типа можешь разделять задачи потоками управлять всем этим женщина потоки потоки у него линейные говорили друг за другом Это скорее мультипоточность параллелизм вот уже ближе сюда Это когда ты по факту

    00:22:11 - 00:23:41

  • Ну тут же самый жил делает асинхроничен на уровне потолка он хочет и переключается быстро другую задачу Я думаю ты начал модуль осинки изучать да да носинки мы можем поговорить в целом вот если не надо если ты хочешь за более более базовую тему вот ну хорошо давай базовую такую вещь такие вот чем Трейдинг мульти процессинга отличие Там прям название есть ответ название Да название самих даже модулей а ну то что у одного много процессов А у трейдинга один Нет у трейдинга может кучу быть процессов огромное количество

    00:22:59 - 00:24:32

  • Мне кажется вплоть до бесконечности не уверен там какая система ограничения ставят Вот но смотри есть Я думаю если ты сейчас откроешь диспетчер задач ты поймешь на бунту У тебя есть монитор Я думаю вот ну принципе это касается и винды и бунту любой системы у них есть свои процессы свои труды потоки вот поэтому этими двум модулями по факту управляет системным потоком системным трудом по одному называется по-другому называется но суть в том что мультипроцессинки да ты имеешь управление мультипроцессами процесс это

    00:23:52 - 00:25:39

  • вот например ты сейчас открыл бы ну ты можешь найти там Перейди там процесс какой-то пайтона да это вот твой процесс он один он существует Он что-то выполняет внутри его есть куча трейдов Да допустим есть тренд отдельные горбыч коллектора есть трек там вот твоего какого-то выполнения ты сам можешь трудов на спавне через Трейдинг и все эти траты они будут крутиться внутри как раз таки одного процесса и этот процесс видишь он у тебя Ну если мониторы не помню пишет Видишь он там занимает какую-то память 100 200 300 их вот все

    00:24:47 - 00:26:05

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

    00:25:25 - 00:27:02

  • внутри процесса и ты можешь там их Ну жил тебе конечно не позволит и в параллельно Запустить вот есть там ряды условий Когда можно их запустить параллельно Конечно когда они там сети работают или когда ты там внешний используешь и ты имеешь доступ ко всей памяти 3 процесса вот мульти процессинг Если ты начнешь мульти процесса ты увидишь что тебя какого-то какого-то какого-то у тебя появляется куча поэтому процессов Диспетчере задач отдельных со своей отдельной памятью и они с друг другом соприкасаться не могут

    00:26:21 - 00:27:35

  • эти процессы друг другу вообще совершенно не знаю И вот это вот принципе самое такое базовое объяснение вот это вот этой теме углублюсь эту тему поглубже Да она одна из самых таких обсуждаемых на собеседованиях потому что она показывает как раз таки глубину вот изучения в практике я могу сказать тебе честно я ни разу не использовал траты Да но нет Я использовал когда-то Но это было где-то Года четыре назад Вот последние четыре года ни разы и мульти процессинг Я использовал девятнадцатом году тогда

    00:26:58 - 00:28:19

  • когда я работал с машиной Но тогда у меня было скажем так у меня был были видеокарты у меня было все Вот И там надо было как бы скорость то есть мульти процесс позволяет тебе использовать разные ядра То есть ты можешь больше прикладное программирование использовать это По большей части скажем так разные диалоги на можешь хотя бы рассказать [музыка] про вот эту систему как вообще Ну по идее только одно ты Осинка работает Так что пока у тебя один процент выполняется и он ждет чего-то он дает исполняться другому процессу это

    00:27:38 - 00:29:11

  • верно а под капотом под капотом Я честно Ну наверное тоже как-то связано Вот как раз с этими процессами миф вообще такое каротину картина [музыка] Ну вот Ну вот как раз таки это тот же самый генератор только ел до него с другой стороны совсем немного Давай проведем небольшой блиц я буду быстро задавать вопросы между а диккшинария хранит ключ значения в себе ключ хашируемый а лист это просто набор объектов упорядоченный Что быстрее лист или Почему Потому что в декшнере поиска происходит по хеш-ключу

    00:28:31 - 00:30:15

  • нет Что такое генератор Какие еще есть генераторы ни списковая поэтому что еще такого спросить и дальше уже перейдем к фреймворка Ну давай в чем разница между [музыка] Что такое контекстные менеджеры контекстный менеджер Да нет просто класс который внутри имеет принципе логично Окей давай перейдем Я думаю немножко Я не подготовлен к тому собеса Вот потому что я рассчитывал что каждый кандидат будет по часу но что-то час Вообще мало чтобы хорошо спрашивать это будет наверное какой-то жесткий блиц

    00:29:51 - 00:31:16

  • без никакого общения Давай проходим про Джанго фреймворк Да вообще что ты мне учил что-то либо не делал Ну опыт когда я проходил курс Вот и сейчас вот сел писать какой-то на столкнулся с некоторыми проблемами что недостаточно еще каких-то знаний Вот и сейчас я хочу еще доучить [музыка] хорошо Какие основные сущности есть Джанго то есть какие основные файлы используются админка А ну эдмин потом URL потом models все вроде в папочках и нет Есть еще по-моему какой-то например Для чего нам Models вообще что такое

    00:31:23 - 00:33:13

  • Models Ну в моделях ты прописываешь класс в котором в моделях модель которая в базу данных ячейки для базы данных чтобы для меня это было понятно Ну если в целом туда принципе модель это репрезентация твоей таблицы в твоей басе данных называется Джан она писал Как нам создать объект какой метод используем а через этот ну создать Да как мы создадим объект через Нет это я про джанговом сейчас спрашиваю а не про экземпляр дать новые Да новая Новый объект именно в базе данных вот Ты точно это писал Если тебе был проект

    00:32:38 - 00:34:25

  • Да я писал это есть наверное может я не про то говорю Ну смотри Ты же имеешь Там модель например да ты создал модель Персен блок article статьи букв книжки ты там имеешь между ними различные Да например там например автор может иметь много книжки и так далее например тебя вот Вью есть твоя где ты получаешь запрос от человека и он тебе говорит пожалуйста создай этому автору там скидывать автора иди да и говорит вот 10 книжек сделай ему чтобы у него были как бы ты это сделал добавить определенному автору 10 книжек

    00:33:57 - 00:35:39

  • Да ну не добавить создать и добавить через Крит да да Вот как раз таки [музыка] зависимость этой hollion но я думаю это было бы просто мы не туманиты мог бы добавить просто автору его букса Property или сет Неважно как раз мог использовать это вот и взять эти книжки но книжки ты предварительно бы создал но плюс еще ты не сказал как бы ты нашел автора то есть ну я тебе отправляю автора и Ну я через год наверное указал чтобы ты сделал если бы автора не нашла автора Ну если мне говорят нет конкретно иди автора Я хочу чтобы у

    00:35:02 - 00:36:48

  • него были книжки А ты мне создаешь нового человека который мне вообще не понятен тяжело вообще тяжелого нет через фильтр указать я тебе отправляю автора и автора которого не существует Что нужно сделать автора которого не существует вообще в базе данных вообще недавно существует ты вот ищешь богату и тебе вот ничего не возвращался задача Мне все равно нужно добавить этого автора Нет Нет не нужно добавить только книжки да да куда мне добавлять если нет автора этого Ну ты должен что-то сделать ты должен

    00:36:17 - 00:37:42

  • обработать этот запрос любом случае либо ты знаешь есть такие штуки А ну да ошибка 404 А что будет если ты воспользуешься гэтом да Ну там автор точка models.cat И у тебя не дойдет автора поэтому как бы ты это превратил чтобы не было наверное нужно прописать вот типа какого-то рейза да да Надо просто закинуть все проекции блок Поэтому правильно все закидывает трек септ не писать там If там твой автор нам и суть была в том что если ты получаешь по факту невалидные запрос программа просто вылазит да то есть ты

    00:37:11 - 00:38:57

  • отправляешь человеку короче хорошая хорошая такой ответ что к сожалению автор это не найден человек Хорошо смотри у нас остается буквально 10 минут я покажешь скрин и мы вместе Ну не вместе сначала ты можешь потом вместе мы ее решим ты мне в телеграм скинешь я сейчас такую более менее поэтому взять вообще мне кажется какая-то Google мицуки демонстрация сразу включать да да поделиться сейчас грузится Ну вообще решать тебе нужно внутри легко Да в целом Но если тебе удобно перекопировать как хочешь Я думаю там

    00:38:12 - 00:39:53

  • нет [музыка] реально А тогда сейчас я принесу наверное вот так вот так видно да добавить два интеджера функции Да хорошо вообще самое лайтовые я просто их отсортировал первое собьется но сейчас самый лайтовый будет самый такой Проверяй надо было прошел тебя все прошли киса Ну да там больше года два кейса больше не надо следующая Задачка залетает тебя бриллианты бриллианты камни сейчас надо вперед что это значит сейчас немного не понимаю смысл задача хорошо с английским Ну читать могу говорить у меня был опыта

    00:39:58 - 00:41:44

  • и стрёмно говорят с этим [музыка] [музыка] а можно как-то без этих камней и бриллиантов просто по-простому или нет но здесь и так просто тут очень простое решение в принципе ну возможно просто мне просто я не могу понять тебе Дана строка бриллиантов которая представляет тип камней которые бриллианты и камни показывает Сколько камней ты имеешь каждый символ камня Это тип камня который ты имеешь Если ты хочешь тебе нужно узнать как много камней ты имеешь Сколько еще там бриллиантов то есть сколько вот или а или или

    00:43:18 - 00:45:04

  • большой А есть у меня [музыка] реализовать через в каждой так сейчас секундочку for и будем говорить если прошло согните все прошло Давай я тебе еще дам задачку уже Middle [музыка] так тут какие-то Ты умеешь работать с рекурсии в Python я знаю что это но никогда не использовал Я просто никогда это зацикленная функция с условием функции которая ссылается сама на себя я просто ну я типа никогда не использовал это честно говоря не приходило Ну может попробуешь Ну давай попробуем Давай попробуем Вот кстати

    00:44:33 - 00:46:37

  • у меня другое появилось решение наверное другое такое у тебя Вот Но мне мне это решение предоставила один человечек Уважаемый девелоперских кругах пока не буду тебе говорить Вот так это что-то Если хочешь я могу быстро объяснить именно как как это вообще работает смотри у нас есть ноды которые представляют Связной список поэта не связанных списка просто не существует их никогда не использует и так далее но других языках это как бы используется вот у них там есть определенные профиты по поводу скорости

    00:47:59 - 00:49:19

  • и так далее вот здесь у нас просто скажем так связанный список Да линки 300 и у него репрезентированно нас в виде таких нот то есть видишь у нас есть там тебе в комментах пишут лист надо объект да и у него есть классе закомментировано зеленым Вот то есть вот так выглядит как раз таки вот это надо по факту я просто тебе нужно найти определенную ноту Вот видишь у тебя Hat это там 4-59 то есть у тебя linked лист который имеет Ну имеет короче четыре значения тебе говорят что 5 ноду нужно вот ноду с

    00:48:44 - 00:50:23

  • номером со своей пять Да вот видишь ты селфи тебе нужно вот ее найти и удалить и потом вернуть тоже такое же лист нот Да только с 419 То есть тебе не список Нужно вернуть они просто тебе пишет что-то список на самом деле тебе нужно вернуть именно объект ноды вот в котором будет уже не будет уже ноды под номером 5 задача непростая Я думаю даже счет того что not Вот как раз вот он нейтрируемый Вот это просто это просто объект то есть давай давай попробуй еще объяснить Это это просто они так пишут

    00:49:39 - 00:51:11

  • вот на самом деле они тебе дают на входе видишь список мне вот дали на вход просто список 49 тебе не дали список тебе написали explanation y11 тебе дают линки лист в виде нот То есть тебе дают класс лист нот точнее экземпляр плеснуть место это не список в целом ты видишь вот Solution Delete not У тебя есть нода и как раз таки это ноды которые содержат себе 4519 такие же ноды которые находятся не в Self Next например да понимаешь суть того что Я понял что надо Хорошо он у меня уже создан и он прописан как ноут Да и там 4 сначала у

    00:50:27 - 00:52:08

  • тебя будет 4 value потом Self Next у него будет такая же лист нода который будет иметь V5 тебе нужно ее удалить потом в этой пятой ноте будет такая тоже селфи селфи Next у него будет уже лесно Да с целью один его это будет Self NEXT с целью 9 понял как это устроено чуть-чуть понял да Самое Понятно мне вот теперь нужно вот теперь нужно Да пятую удалить и вернуть лист нот у которого будет селфи 4 потом Next у него будет нода сэлфи 1 и потом будет там последняя 9 и у нее Self Next будет на потому что список закончился

    00:51:30 - 00:53:08

  • а вот эта штука [музыка] стринг по идее доктрины то ты можешь удалить ничего не случится Но это посмотри как это устроено вот ну то что я тебе говорил [музыка] один Out а это она вывела типа то что должно быть или как аж Ну в теории тоже я ожидала это на самом деле ты вообще ничего не выводишь Ну вот поэтому понять как это устроено [музыка] занимался я не могу просто форум пройтись или могу Нет не можешь Почему тебя проходиться это просто 5 напиши принт Ну вот дают пятую ноду пятерка а здесь он дает вал

    00:52:35 - 00:54:36

  • Ну странно Кстати у них тоски если в теории тебе должны дать там сразу начинаются с 5 как мне тогда это обыграть в мне задается сейчас а мне еще нет не дает доступ первой ноте Сейчас наверно сложновато такое Ну давай давай тогда я просто тебе помогу расскажи просто да я мне просто даже идей Нет просто нужно потренироваться решать Такой тип задачи он довольно таки популярный смотри решение Давай давай чисто его запишем Вот и начнем прогонять принтовать что он делает Вот она делает все эта строчка она делается закидывающая

    00:55:16 - 00:57:04

  • Вот в делить новую функцию тебе уже один То есть у тебя уже вылью у ноды текущей Да она перекинулась вперед Давай вторую строчку на самом деле я пытался решать какие-то типа медиум задачки на лед коде но за счет вот этого сложного объяснения никогда не мог понять что от меня хотят как это Решить доходил решение ты сильно лизнул Вал 9 Next Non дальше ничего нет Ну тут принципе ничего возвращать эта функция не надо в целом Вот она пишет я не посмотрел Донат retur они sing modifine not in Place Вот то есть тебе

    00:57:34 - 00:58:54

  • даже ничего не надо возвращать тебе просто надо функция которая просто удалит Вот ты просто перепрыгиваешь ты перепрыгиваешь что ноду Да и ты мне дали 4 5 4 5 9 я начинаю с пятерки на самом деле тебе не дали 459 это немножко тебя заблуждение вел 4519 где-то существует Да вот а тебе Твоя задача конкретно взять функцию Delete not вот этим примерчики дать я воспользуюсь если что чат G5 специально чтобы смотреть как она вообще работает это вот Вот ты создаешь например ноды да и по факту есть список 4-59 Да у тебя

    00:59:10 - 01:00:59

  • потом ты определяешь их делаешь им точка Next да видишь как ты это делаешь там дальше Ну вот это ты как бы сделаешь Связной Связной список ты его сделал Вот и твоя функция удалит надо точка 2 и ты просто по факту перекидываешь с ноды точка 2 до все эти value вперед и так ты удаляешь эту ноту поскольку если удалил Вот это понятно Вот это но 3 не будет на него никто не будет ссылаться получается Мне нужно снова один точка Next сделать что он будет равно но три сразу да вот так просто удаляется а здесь это создавалось так же самое

    01:00:07 - 01:01:43

  • Да это все под капотом есть Да тебя задача только солюши сделать поэтому это слегка путает задача так А если NO2 у меня у меня в Ноте уже лежит в ноги у тебя только Пятая нода все и мне как раз уже и нужно удалить И чтобы мне удалить Мне нужно взять ноут ты берешь просто со следующей но давай перекладываю да и Next тоже берешь следующую надо И перекладываешь ты просто эту ноду перекладываешь так ты и удаляешь это решение Да все сработало Поздравляю задачи решена то есть честно вот когда типа я посмотрел как это подкапоткой это

    01:01:10 - 01:02:44

  • стало более Понятно ну здесь они не объяснили И поэтому достаточно сложно сделать какой-то метод когда ты не видишь Чем ты именно взаимодействие факта для тебя это был Black Box абсолютно вот ну есть там Solutions там можешь посмотреть как другие люди решают А вот Хорошо ну давай тогда принципе я думаю пусть будет традиции финально оценивать левел смотри у тебя как для девяти месяцев нормальные знания именно какой-то теоретической части в начале Да но ты очень сильно валишься на глубоких вопросах То есть я нет знаний

    01:02:05 - 01:03:32

  • по трейдингу процессингу это очень важно Вот у тебя не хватает конечно практического опыта Потому что ты только учишься то есть например если взять этот метод до который мы говорили взять автора и Ну просто на добавлять ему книжек Да ты не уверен как его процессе То есть тебе нужно больше сделать как раз таки Пэт проектов на Джанго чтобы у тебя именно было понимание как это как люди пишут код Как это работает вот по киту Ну мы особо не общались но соответственно Я понимаю что погибнутый не совсем понимаешь А это как бы уже

    01:02:48 - 01:04:12

  • даже у Junior начинается работают понимаешь что все на проекте взаимодействие именно я просто вот когда я пишу сам свой типа проект 24/7 даже через год но когда ты работаешь в проекте У тебя есть Ветка ты должен там написать номер этой ветке там обозначить номер таски Да чтобы потому что там ссылка есть определенная то есть человек который смотрит Task он может перейти сразу там гитла bitbucket и увидеть сам код репозитории Вот то есть тебе нужно понимать как это работает Что еще Ну а синхронично естественно

    01:03:30 - 01:04:41

  • тебе нужно выучить Потому что если ты начал ее выучить Вот она по-любому встретиться это тоже важная тема поэтому что дальше ну по решением задач То есть у тебя есть на самом деле хорошая именно кодинг навыки Ну как хорош То есть я имею ввиду именно если взять уровень человек которого только начал учить то в целом Ну ты можешь написать код Вот Но тебе не хватает немножко наверное скилла по английскому чтобы понять и вычислить достаточно сложно Я считаю текст лидкода они по простому Не объясняют Вот это

    01:04:10 - 01:05:33

  • такой сложный технический текст даже в реальных танцах Так это не описывают пишут гораздо проще но в целом нужно определить потянуть английский Вот Ну естественно ты его должен понимать на слух полностью то есть Вот например все что я сейчас сказала могу сказать на английском и ты должен был бы это понять потому что но по факту на Технической теме общаемся Вот что еще ну принципе принципе вот так я думаю думаю вот собеседование сейчас наш собеседование было немножко мной сорянцев Элен Я вообще к нему

    01:04:51 - 01:06:07

  • думал что вопрос У меня там адекватные готовы Но если честно я думаю надо переформатировать формат немножко Надеюсь сейчас со следующей кандидатами это сделать в целом инженер будет очень сложно потому что моя собеседование было на 50 процентов слабее собеседование сейчас то есть мое собеседование сейчас было скорее всего уровня три не Вот и нужно еще учиться тебе вот прям смотрите собеса вот а как В целом как человек да если сидеть со скиллы то ну мне нравится общаться Вот это очень важно потому что

    01:05:29 - 01:06:41

  • я на своей карьере видел очень много странных людей токсиков людей вот и мне кажется это 50 процентов успеха на собеседование это то как ты общаешься Как ты выглядишь И что ты что-то говоришь Да вне технического плана вот Спасибо большое было очень приятно с тобой пообщаться лично вот да буду продолжать учиться они конец Это было собеседование вот я из этого корень то что мне нужно еще изучить то что доучить сделать буду работать над этим обязательно ты увидимся что потом я думаю можно будет Переса беседоваться со временем

    01:06:05 - 01:07:32

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

    01:06:50 - 01:07:32

Менторы

Специалисты своей области, которые смогут помочь вам

  • Нигма Нурия
    Нигма Нурия

    Middle .Net Developer

  • Сущенко Татьяна
    Сущенко Татьяна

    Senior Product Manager

  • Гудков Денис
    Гудков Денис

    Middle Python Developer

  • Курочкин Константин
    Курочкин Константин

    Ведущий программист

  • Гудман Макс
    Гудман Макс

    Backend Software Engineer (PHP)

  • Гребенкин Антон
    Гребенкин Антон

    Senior .NET/C# developer

  • Ахназаров Фёдор
    Ахназаров Фёдор

    Middle DevOps Engineer | Tbilisi, Georgia

  • Шорохов Дмитрий
    Шорохов Дмитрий

    Middle C# .NET

  • Жуков Александр
    Жуков Александр

    Senior PHP-разработчик

  • Мазикин Павел
    Мазикин Павел

    Middle python developer

© 2024 HireGuru. Сделано в Санкт-Петербурге с hireguru.ru