Большое огромное спасибо! Смотрю второе твое видео - оба поняла с первого раза. Никакой воды, всё предельно доходчиво. Благодарю! Теперь сначала буду искать ответы на свои вопросы сначала в вашем канале, а потом дальше, если не найду.
Спасибо за видео.Всем кто споткнулся о то,что на самом деле 7-й элемент фибоначчи это не 13,а 8---автор кодер,и считает как кодер-с нуля,тут да ошибка.Но.Видео,в первую очередь, было записано с целью объяснить смысл и суть рекурсии,за что автору спасибо.Если чья-то перфекционистская сущность была глубоко ранена этой досадной оплошностью,велкам снимать безупречные образовательные видео.Я же здесь посмотрю,заодно порадуюсь полезному побочному эффекту от видео-прокачаю критичность восприятия информации.
def factorial(x): y = 1 for x in range(0, x): y += y*x print(y) factorial(23) вместо рекурсии можно написать так. например использую при парсинге сайтов, количество страниц выясняю и погнал, а уже внутри этого цикла можно вызывать рекурсию и т.д. Интересная тема! Спасибо.
Фибоначчи взорвала мозг! Гениально простая двойная рекурсия, вот комп и задумался, сколько он создал стеков.... помню в грокаем алгоритмы разбирал факторил, так этот сложнее, нужно понять как он работает под капотом!
Хочу поддержать автора и сказать что очень нравится подход и подача:) Сколько времени прошло, а ваш канал мне больше нравится, чем популярные с таким же контентом! Респект Автору и продвижения! Реклама нужна каналу! :)
Спасибо,Денис! посмотрел ролики про AWS . Теперь вот про питон смотрю)) Чуть задонатил тебя)) На работе ребята говорят , что у тебя хорошая подача материала!
Хорошее объяснение, простое и понятное. Интересно, рекурсивные функции вообще есть смысл использовать в работе? Они, конечно, прикольные и кода меньше писать, чем через цикл, но усложняют понимание кода, да производительностью не блещут, судя по всему.
Готовлю ролик по кэшированию. Гугление выдало ваше видео, хотя мой беглый взгляд никаких примеров декорирования и обёртывания не увидел. В целом логично показывать тему кеширования на примере рекурсии, здорово что алгоритмы ютуба это просекли. Мысли вслух.
может кому-то будет интересно, числа фибоначи можно считать очень быстро используя дикоратор lru_cache с библиотеки functools, вот пример: from functools import lru_cache @lru_cache(maxsize=223) def fibonacci(n): if n
Мой вариант по поводу сумы: def function(num): sumnum = [] for i in range(num + 1): sumnum.append(i) return sum(sumnum) print(function(10)) Или можно так (пример с факториалом): from functools import reduce def function(num1, num2): return reduce((lambda x, y: x * y), range(num1, num2 +1)) print(function(1, 5))
Чел, спасибо большое за уроки и старания !!! Успехов , отличный канал и полезный материал !!! Когда время будет можешь записать уроки по PyQt5 и Django?
Добрый день. Такой вопрос командой os.getlogin() можем получить Логин текущего пользователя А возможно ли получить пароль? хотя бы в двоичных данных ну или сразу в расшифрованном виде ну или вообще в каком нибудь виде. Спасибо за ответ
Можно спросить? а будут ли подобные уроки: типо сделать сервер, и в опред время он сам запускался и делал какие-либо действия, или чтобы он запускался от появления допустим какой-то информации на той или иной системе, или сайта, как я понял из этого урока рекурсия не подойдет, там как она будет клонировать сама себя все время, и только засрешь этим все.
Привет Денис хотел тебя спросить а как готовишься к собесам где на позицию требуется знания python? Что повторяешь к примеру, чтобы бы была возможность пройти собес? Просто уже более 2 лет его особо не использовал на проектах, даже не представляю, что повторять, чтобы освежить свои знания.
Так до конца и не понятно, как код работает. Уж и про репку и матрешку посмотрел и в "укусе" раздел прочитал и Ваше видео посмотрел. Как рекурсия работает вроде понятно, а вот как это с кодом вяжется??? Может питон видит рекурсивную конструкцию и выполняет ее, как в случае итерации for x in rang('таком то'), делать то то, столько то раз. Но, все равно - СпасиБо огромное за оптимистичный подход!!!
Спасибо за Ваш труд. А как насчет этой рекурсии? Не могу въехать хоть и визуализирую с помощью pythontutor. Как он их складывает? Благодарю за внимание. def recSum(list): if(len(list) == 1): return list[0] else: return list[0] + recSum(list[1:]) print(recSum([5, 7, 3, 8, 10])) // возвращает 33
Del Onetop смотри в else, функция возвращяет первое значение списка + зовет себя уменьшенным списком начинающимся с элемента 1 а не 0. Тоесть [1:]. Второй раз функция вернет опять первое значение уже уменьшенного списка + еще более уменьшенный список.
А как вывести простые числа? Плиз помогите, я искал в интернете нашол 1 робочый вариант но его чесно говоря не понял. Ето было давно может сейчас и понял да и ща опять пойду гуглить но если несложно напишыте ответ буду очень рад)
Не смотря на то, что пока что посмотрел урок только на половину узнал первый раз про рекурсию в этом видео. Но в коде про sum, не могу понять зачем написать elif x ==1: return 1 код и без этой части отлично может работать
Хотел спросить вопрос может немного глупый но прост голову сломал, мне нравиться 2 языка, шарп и пайтон. Но учить два сразу - нехочу да и не смогу. Хотел спросить какой бы из этих двух посоветовали бы взять за основу первым? Хочу работать программистом, засматривался на unity3d в случае с шарпом. Пайтон - нравиться тем что он пайтон + в линукс удобно с ним. В общем... подскажите плиз...
Смотри что популярнее на рынке труда сейчас, как по мне так вроде Пайтон популярнее, хотя смотря в какой стране наверное. Пайтон популярен так как он open source , его не надо компилировать как и Java. Да и учить мне кажется Пайтон легче.
Просто если на с# я могу как-то представить где я его могу использовать - то по отношению к пайтону - единственное что мне приходит в голову это сайты на джанго и разного рода телеграмботы и парсеры. Я С Украины. фрилансер. в основном зарабатываю вёрсткой. тошнит уже от неё) Хочется - программированием. на рынке в основном это php - но не особо тянет к нему. иногда мелькают вакансии шарпа. пайтон лишь пару раз видел. либо такие "кросс-заказы" - типо тогоже телеграмм бота которого можно и на шарпе сделать и на пайтоне...
Под - где я могу его использовать - помимо различных фин структур и поддержок раличных - разработка на ксамарин под андроид, иос, десктоп, юнити тот же...ну это онли моё мнение - честно я не особо представляю в какую сторону лучше идти...хочется определится..
Это же просто два разных инструмента Советовать что лучше, это как: отвёртка или молоток - что купить? Если это твой первый язык, то я бы посоветовал питон(php я за язык не считаю:) Он довольно гибкий, много готовых решений. Про питон ты правильно сказал, что в линуске с ним легче живётся Ну и сбацать что-нибудь по-быстрому можно Поэтому такой язык как питон всегда полезно знать
Попробуй в уме прогони функцию начиная с 0, потом 1, потом 2, потом 3, потом с 4. Когда у тебя еже есть ответы сколько функция вернет если получает 2 и 3, тебе более менее легко понять принцип работы.
автору большое спасибо за разъяснения, только сейчас я понял что означает выражение (х-1). до этого мне непонятно было для чего оно используется, т.к. я не знал что алгоритм начинает считать значения от большего к меньшему...
6:38 орнул в голосину "двоечку перекинули нах..." автор молодец, подача классная с юмором
++
Мне нравится Ваш стиль преподавания. С юмором. Удачи.
я всю лекцию смеялся)
а так все хорошо обьясняете,мне нравится ваш стиль ведения
прохожу платные курсы, ты обьяснил этот материал намного понятнее. спасибо
Спасибо за ваши столь большой труд который вы приложили к этим урокам. Дай бог поработать с вами в будущем в сфере devops
Большое огромное спасибо! Смотрю второе твое видео - оба поняла с первого раза. Никакой воды, всё предельно доходчиво. Благодарю! Теперь сначала буду искать ответы на свои вопросы сначала в вашем канале, а потом дальше, если не найду.
Единственный кто грамотно разложил тему! Спасибо!! Презенташка помогла!!!
ИДЕАЛЬНОЕ объяснение рекурсии!!! И-Д-Е-А-Л-Ь-Н-О-Е, Спасибо, тысячаспасибо!
Рад был помоч!
Спасибо за видео.Всем кто споткнулся о то,что на самом деле 7-й элемент фибоначчи это не 13,а 8---автор кодер,и считает как кодер-с нуля,тут да ошибка.Но.Видео,в первую очередь, было записано с целью объяснить смысл и суть рекурсии,за что автору спасибо.Если чья-то перфекционистская сущность была глубоко ранена этой досадной оплошностью,велкам снимать безупречные образовательные видео.Я же здесь посмотрю,заодно порадуюсь полезному побочному эффекту от видео-прокачаю критичность восприятия информации.
Форма преподавания материала - супер. Спасибо большое)
Стиль подачи 'лохматый' однозначно лайк подписка.
И посмеялся и дошло! :)
Не примите за упрёк или камень - это комплимент :)
Огромное спасибо, долго не мог понять эту тему. Здесь, сразу все понял. Спасибо огромное!
Сейчас прохожу эту рекурсию. Первая тема, которая реально сложная для понимания.
def factorial(x):
y = 1
for x in range(0, x):
y += y*x
print(y)
factorial(23)
вместо рекурсии можно написать так. например использую при парсинге сайтов, количество страниц выясняю и погнал, а уже внутри этого цикла можно вызывать рекурсию и т.д. Интересная тема! Спасибо.
Лучший канал, помню по AWS тут учился пару лет назад
Фибоначчи взорвала мозг! Гениально простая двойная рекурсия, вот комп и задумался, сколько он создал стеков.... помню в грокаем алгоритмы разбирал факторил, так этот сложнее, нужно понять как он работает под капотом!
спасибо за объяснение
просто никто так понятно не объяснял
Спасибо, лучший урок по питону, что мне попадался) Помог подготовиться к экзу :))
Отличный урок!)) Огромное спасибо! Жаль что у такого хорошего канала так мало подписчиков(
Спасибо, а подписчики набираются, и все больше и больше
Хочу поддержать автора и сказать что очень нравится подход и подача:) Сколько времени прошло, а ваш канал мне больше нравится, чем популярные с таким же контентом! Респект Автору и продвижения! Реклама нужна каналу! :)
Спасибо!!
Спасибо большое, понял по стрелочкам в презентации, всё что нужно было!)
Спасибо, смотрел другой урок ничего не понял, а тут все так просто разжевано, догнал сразу)))
Я рад
мда, чёто сидел, сидел, долго не понимал, а видос посмотрел - всё же действительно просто. ЛАЙК!
Спасибо, все стало намного понятней!)
Удачи тебе!)
Спасибо огромное! Практически никто не смог объяснить также как вы!
Спасибо
Неужели я поняла "эту х... .рекурсию"=)) Спасибо вам огромнейшее!
Да там не всё так сложно, главное обяснить правильно :)
Читал читал так и не понял до конца. 7 минут видео и все стало просто и понятно) Автору поклон!
Спасибо!
Спасибо,Денис! посмотрел ролики про AWS . Теперь вот про питон смотрю)) Чуть задонатил тебя)) На работе ребята говорят , что у тебя хорошая подача материала!
Рад слышать, спасибо!
а на факториале нормально разжевал=) спасибо
бл.. комментатор от Бога!! Очень доходчиво, но ржачно и с юмором)) Возьми меня на обучение!!
Во первых - спасибо большое! Я наконец-то понял тему.
Во вторых - с подачи угарнул 😆 👍🏿
Спасибо, так легко объясняете))
def fib(n):
>>> a, b = 0, 1
>>> while a < n:
>>> print(a, end=' ')
>>> a, b = b, a+b
>>> print()
>>> fib(1000)
Спер, точно такой же код, я где то видел))))
Дякую, дуже допомогло
единственное толковое пояснение - и меня озарило. Спасибо
Годное обьяснение!
Хорошо погулял человек)
Классно , продолжай . Очень интересно.
Про рекурсию интересно говорится в "Грокаем алгоримы" . Там был вариант с полем, которое надо разбить на максимально большие, равные квадраты
Там же было про ящики
Я тоже читал, но читал читал и все равно не дошло, поэтому я тут, дойдёт, пойду дальше читать.
@@FlyDem дошло?
Спасибо большое, наконец-то разобрался!
Оказалось все не так сложно как я сам думал в начале когда в универе это учил.
Главное примеры нормальные показать и все становится понятным.
Молодец))) Приятно уроки смотреть!))
Спасибо!
Хорошее объяснение, простое и понятное.
Интересно, рекурсивные функции вообще есть смысл использовать в работе? Они, конечно, прикольные и кода меньше писать, чем через цикл, но усложняют понимание кода, да производительностью не блещут, судя по всему.
Спасибо, классно обьясняеш.
Ты просто лучший)
очень ждал, спасибо!!
18:32 да брат, чтобы мы делали без твоих презентаций.. ещё раз спасибо
Красава, смотреть Тебя одно удовольствие, продолжай, удачи) патписка, лайк, калакольчег
Мужик, ты лучший!!!!
def quest():
a = input('понравился урок?\t')
if a != 'да':
print('неправильный ответ')
quest()
return 'я знал что ты знал правильный ответ'
quest()
С циклом while думаю даже проще будет, проверять "а" не надо
@@Andrei-eh8wwс циклом while конечно проще будет, но в этом видео шла речь о рекурсии ;)
Вот вам и пожалуйста 😉
@@radceb2474 да не, я просто в одной книге читал что если ты чему то научился, не суй этот навык во все подряд)
@@Andrei-eh8ww А понятно... Это типа не надо сунуть свои комменты во всё подряд , если научился писать?
@@radceb2474 обиделся? 😂😂😂
Ладно, я просто нацелен на оптимизацию кода👍
Готовлю ролик по кэшированию. Гугление выдало ваше видео, хотя мой беглый взгляд никаких примеров декорирования и обёртывания не увидел. В целом логично показывать тему кеширования на примере рекурсии, здорово что алгоритмы ютуба это просекли. Мысли вслух.
Спасибо за уроки. Трудно разжевать более доступно.
Старался, спасибо!
может кому-то будет интересно, числа фибоначи можно считать очень быстро используя дикоратор lru_cache с библиотеки functools, вот пример:
from functools import lru_cache
@lru_cache(maxsize=223)
def fibonacci(n):
if n
Прикольно обьясняешь с юмором xD =>
спс за обЪяснения
бозе спасибо большое!!!!!
круто обяснив накінецьто все понятно
Мой вариант по поводу сумы:
def function(num):
sumnum = []
for i in range(num + 1):
sumnum.append(i)
return sum(sumnum)
print(function(10))
Или можно так (пример с факториалом):
from functools import reduce
def function(num1, num2):
return reduce((lambda x, y: x * y), range(num1, num2 +1))
print(function(1, 5))
spasibo
Чел, спасибо большое за уроки и старания !!! Успехов , отличный канал и полезный материал !!!
Когда время будет можешь записать уроки по PyQt5 и Django?
По Django записывал 3 урока, токо то Django v1
Запишите пожалуйста уроки как писать запросы API на JSON (python)
и как читать документацию к этим запросам на примерах .
Добрый день. Такой вопрос командой os.getlogin() можем получить Логин текущего пользователя
А возможно ли получить пароль? хотя бы в двоичных данных ну или сразу в расшифрованном виде ну или вообще в каком нибудь виде.
Спасибо за ответ
Спасибо за уроки!))) а будут уроку по django ?
наверно будет)
как мне не хватало простого объяснения со словами хрень фигня и ... его знает.)))))))))))
Спасибо 🎉
Можно спросить? а будут ли подобные уроки: типо сделать сервер, и в опред время он сам запускался и делал какие-либо действия, или чтобы он запускался от появления допустим какой-то информации на той или иной системе, или сайта, как я понял из этого урока рекурсия не подойдет, там как она будет клонировать сама себя все время, и только засрешь этим все.
Не такого делать не буду, кстати в AWS это сделать можно.
Чел: Пропишем эээ стопы наши...
Я: Снимаю носки...
Надеемся что каждый к концу видео разберется с этой хренью, рекурсией ))
Привет Денис хотел тебя спросить а как готовишься к собесам где на позицию требуется знания python? Что повторяешь к примеру, чтобы бы была возможность пройти собес? Просто уже более 2 лет его особо не использовал на проектах, даже не представляю, что повторять, чтобы освежить свои знания.
Я уже 5 лет на одном месте работаю, когда готовился смотел как там читать и писать файлы. Ни разу не пригодилось.
Так до конца и не понятно, как код работает. Уж и про репку и матрешку посмотрел и в "укусе" раздел прочитал и Ваше видео посмотрел. Как рекурсия работает вроде понятно, а вот как это с кодом вяжется??? Может питон видит рекурсивную конструкцию и выполняет ее, как в случае итерации for x in rang('таком то'), делать то то, столько то раз. Но, все равно - СпасиБо огромное за оптимистичный подход!!!
Похоже на курс Python programist от GeekBrains за 2015 год, только с хорошим звуком)и качеством видео)
Был ли опыт передачи результата, выполненного кода на python, например в переменную bash скрипта?
Ну просто сделай Environment Variable из результата и всё, дальше пусть кто хочет тот и использует
@@ADV-IT пасеб, попробую
Спасибо за Ваш труд. А как насчет этой рекурсии? Не могу въехать хоть и визуализирую с помощью pythontutor. Как он их складывает? Благодарю за внимание.
def recSum(list):
if(len(list) == 1):
return list[0]
else:
return list[0] + recSum(list[1:])
print(recSum([5, 7, 3, 8, 10])) // возвращает 33
Del Onetop смотри в else, функция возвращяет первое значение списка + зовет себя уменьшенным списком начинающимся с элемента 1 а не 0. Тоесть [1:].
Второй раз функция вернет опять первое значение уже уменьшенного списка + еще более уменьшенный список.
теперь я тоже Мастер Фибоначчи!
А как вывести простые числа? Плиз помогите, я искал в интернете нашол 1 робочый вариант но его чесно говоря не понял. Ето было давно может сейчас и понял да и ща опять пойду гуглить но если несложно напишыте ответ буду очень рад)
Простые числа те которые делятса на себя и на 1 (1 2 3 5 7 11)
это задание первого класса программирования, попробуй сам.
qaru.site/questions/163031/checking-if-a-number-is-a-prime-number-in-python
ооо)))Уроки - супер)
Спасибо тебе!
Не смотря на то, что пока что посмотрел урок только на половину узнал первый раз про рекурсию в этом видео. Но в коде про sum, не могу понять зачем написать
elif x ==1:
return 1
код и без этой части отлично может работать
Посмотрел дальше и увидел, что ты понял ошибку )
Приветствую! Спасибо за уроки!
А как происходит работа с ресурсами процесса (контекстом) при рекурсивных вызовах?
Не понял вопроса, что за контекст?
Я тоже FidoNet пользовался )
А почему рекурсия факториала останавливается, когда x==0? Код работает, когда x==1, ведь единица низшее число в итерации.
Факториал нуля тоже чему-то равен ru.wikipedia.org/wiki/%D0%A4%D0%B0%D0%BA%D1%82%D0%BE%D1%80%D0%B8%D0%B0%D0%BB
0!=1.
Здравствуйте, у Вас есть страница в соц сетях? Хочу обговорить возможность платных занятий
Я не делаю личных консультаций
09:00 в функции sum() можно было не определять случай, когда x=0
Хотел спросить вопрос может немного глупый но прост голову сломал, мне нравиться 2 языка, шарп и пайтон. Но учить два сразу - нехочу да и не смогу. Хотел спросить какой бы из этих двух посоветовали бы взять за основу первым? Хочу работать программистом, засматривался на unity3d в случае с шарпом. Пайтон - нравиться тем что он пайтон + в линукс удобно с ним. В общем... подскажите плиз...
Смотри что популярнее на рынке труда сейчас, как по мне так вроде Пайтон популярнее, хотя смотря в какой стране наверное.
Пайтон популярен так как он open source , его не надо компилировать как и Java.
Да и учить мне кажется Пайтон легче.
Просто если на с# я могу как-то представить где я его могу использовать - то по отношению к пайтону - единственное что мне приходит в голову это сайты на джанго и разного рода телеграмботы и парсеры. Я С Украины. фрилансер. в основном зарабатываю вёрсткой. тошнит уже от неё) Хочется - программированием. на рынке в основном это php - но не особо тянет к нему. иногда мелькают вакансии шарпа. пайтон лишь пару раз видел. либо такие "кросс-заказы" - типо тогоже телеграмм бота которого можно и на шарпе сделать и на пайтоне...
Под - где я могу его использовать - помимо различных фин структур и поддержок раличных - разработка на ксамарин под андроид, иос, десктоп, юнити тот же...ну это онли моё мнение - честно я не особо представляю в какую сторону лучше идти...хочется определится..
Это же просто два разных инструмента
Советовать что лучше, это как: отвёртка или молоток - что купить?
Если это твой первый язык, то я бы посоветовал питон(php я за язык не считаю:)
Он довольно гибкий, много готовых решений.
Про питон ты правильно сказал, что в линуске с ним легче живётся
Ну и сбацать что-нибудь по-быстрому можно
Поэтому такой язык как питон всегда полезно знать
Сколько стоит 1 час вашего времени? Хотела б заказать у Вас 1 задание.
я не даю личные консультации
Не могу установит библиотеку dlib , помогите пожалуйста
pip install dlib
Здравствуйте, когда будут следующие уроки по Python для НЕ начинающих?
Не скоро так как не в планах совсем
а как насчет стандартной библиотеки( math ) и функции sum(встроенной)?
И sort тоже стандартный есть, но на интервью у тебя спросят про алгоритм а не про функцию sort, sum.
А как обойти ограничение на глубину рекурсии (993) ? И хотелось бы урок по работе с большими числами, сравнение, возведение в степень и т.д.
import sys
sys.setrecursionlimit(4000)
благодарю
ADV-IT скажите а как можно ускорить рекурсию для фибоначчи? Вот он 40 число считает секунд 20, а если 100 или 1000 ввести проц совсем умрет.
@@supernaut_dorofeev
def fib(n):
if n == 0:
return 0
else:
if n > 1:
fib(n-1)
fib0, fib1 = fib1, fib0+fib1
return fib1
else:
fib0=0
fib1=1
global fib0
global fib1
return fib1
print(fib(n))
То, что Вы не могли вспомнить, называется base case.
Ты чёто путаешь, по терминологии автора это называется ретюрная остановка :)
@@IIeTpOc9H4uK стоп слово😁
А как сделать чтобы вводить значения с клавиатуры?
Смотреть "уроки для начинающих" я там это показывал.
"Функция должна прекратить своё выполнение и начать делать ретёурн!" xD
Денис, так нельзя?
def fac (n):
fac = 1
for x in range (0, (n+1)):
fac = fac * n
return fac
print(fac(6))
Если выдает то что надо, то можно только это возмет больше памяти и выполнится медленнее помоему.
Все же понятно вроде )
Python выводит бесконечную рекурсию: "Вывел 993 раза и кароче... ну вы... идите на... эээ вот"
import sys
print(sys.getrecursionlimit())
sys.setrecursionlimit(5000)
@@ADV-IT лол, спасибо)0)) но это была как бы цитата из видео)0))
эх не понял фибоначи а именно последний return каким образом оно вычисляется?
каждый return входит в свою ветку рекурсии до получения результата
Попробуй в уме прогони функцию начиная с 0, потом 1, потом 2, потом 3, потом с 4.
Когда у тебя еже есть ответы сколько функция вернет если получает 2 и 3, тебе более менее легко понять принцип работы.
Я уж думал не посчитает)))
Сначала не понял, а потом каааак понял!
Вы с какого города в Израиле?:)
Я уже не из Израиля
@@ADV-IT А куда переехали если не секрет?
В Ванкувер, Канада
автору большое спасибо за разъяснения,
только сейчас я понял что означает выражение (х-1).
до этого мне непонятно было для чего оно используется,
т.к. я не знал что алгоритм начинает считать значения от большего к меньшему...
На удивление, доходчивое объяснение) Рекурсию можно считать освоенной. Как, кстати, на поприще Solution Architect?
Все супер :)