Огромное спасибо! Автор выручает и дает отличный материал за бесплатно!
@pavelnesterchuk55592 жыл бұрын
Спасибо, очень доступно излогаете. Понятность и доступность подачи, замечательная, одна из лучших
@ИванКруткевич3 жыл бұрын
У вас отличные уроки!
@orazovdidar9 ай бұрын
Спасибо Сергей, отличное объяснение.
@ФедорПтичкин-з8п2 жыл бұрын
спасибо за этот и другие ваши курсы на этом канале. по питону ничего более обширного по объему и легкого для понимания я еще не встречал нигде.
@volodymyr82152 жыл бұрын
подача матеріалу - клас! дякую.
@andredru427810 ай бұрын
Спасибо. Позже узнаем применение.
@alucardv85512 жыл бұрын
Что я понял: Итерируемые обьекты - это те, которые можно перебрать, например списки и строки (а ещё кортежи, множества, словари и.т.п). Итератор - это обьект, который возвращает свои элементы по одному за раз. Когда элементы заканчиваються, итератор возвращает исключение StopIteration. - Элементы итератора можно перебрать всего один раз, для последующих придется заново создавать итератор. - Доступ к обьекту по итератору и по индеку - не одно и тоже. - Итераторы используються если нужно постоянно перебирать итерируемые обьекты разных типов (например, это происходит в цикле for).
@BodenUatrade6 ай бұрын
Спасибо, хоть ты доступно обьяснил
@mr_frost656 ай бұрын
@@BodenUatrade Это не его слова - это слова Сергея из видео, немного переделанные автором комментария
@vitaliy35212 жыл бұрын
ИМХО стоило бы рассказать, что у iter() есть второй аргумент который вызывает stopiteration в случае если элемент последовательности совпадает с этим вторым аргументом. Например l = [x for x in iter(input, '-1')], будет заполнять массив с помощью input пока не получит -1 на вход
@olegkomlev2 жыл бұрын
Если у iter задан второй аргумент, то первым аргументом должна быть функция, выдающая очередное значение. А если первым аргументом указать список или строку, то будет ошибка.
@323ser2 жыл бұрын
Отличное объяснение! Большое вам спасибо!
@diplomdeady3 жыл бұрын
Спасибо за уроки! Лайк!
@elenalevasheva3830 Жыл бұрын
Супер, спасибо за урок и новое открытие
@victorenersklad4467 Жыл бұрын
Спасибо, добрый человек!
@ferret85923 жыл бұрын
Спасибо за видео! Жду про генераторы
@supervichka77643 жыл бұрын
спасибо большое!!! очень интересно и понятно:-)
@IAnikeyI2 жыл бұрын
как всегда гениально!
@13_chasov_nochi2 жыл бұрын
вы отлично объясняете
@Aleks-x2i Жыл бұрын
Прикольно конечно. Не представляю для чего может понадобится iter() в явном виде но в контексте понимания работы for вполне познавательно.
@mazur_vg3 жыл бұрын
Спасибо!!! Очень ценно!
@nokia_n-gage2 жыл бұрын
Отличное объяснение!
@niktonikak1820 Жыл бұрын
Thank you very much, от души
@Faritech3183 жыл бұрын
спасибо большое=)
@tbassir9076 Жыл бұрын
Отличное объяснение! Попробовал эксперимент со словарём, ключ выдал полностью, а значение -ошибку!
@ridanil19 ай бұрын
Эта функция iter() пригодится при создании своего (пользовательского) объекта (колекции).
@Putu_pererenan4 ай бұрын
Например, односвязного списка
@ИльяЗахаров-е3э2 жыл бұрын
Лучший!!!
@jamjam3337 Жыл бұрын
спасибо!👏👍
@sainco30363 жыл бұрын
спасибо
@Psoglawec2 жыл бұрын
Если б не это видео, вообще не понял бы чего хотят на уроке. Как же любят некоторые нести хрень заумными словами полчаса, хотя за полминуты можно всё разьяснить. Большое спасибо.
@ibrahimoglu3 жыл бұрын
👍
@Юлия-ч9с6й2 жыл бұрын
У меня скорее крутился вопрос нужно ли каждый раз писать iter или можно сразу весь списокт(или строку) прокрутить, написав одну строку кода...
@aveok12 жыл бұрын
@selfedy, А можна же исползоват цикл for чтобы зделеь эта. Вот например: arr=[5, 9, 12, 18] for i in arr: print(i) Почему же нужно функцим итер и некст?
@aveok12 жыл бұрын
А почему учит какой-то итер если я знаю for
@likeclockwork96003 жыл бұрын
итератор итерировал, итерировал да не выинтерировал интерпретатор интерпретировал, интерпретировал да не выинтрепретировал
@impellergimpeller51333 жыл бұрын
👍👍👍👍👍
@tonito4779 Жыл бұрын
Что такое итерация - я знаю ( с задач линейного программирования в ексель, например). Но, тут мне сложно представить практическое значение этих возможностей.
@Larriva666 Жыл бұрын
Получается, что механизм iter - это более абстрактное понятие? На практике iter реально используется? Или он в основном используется под капотом циклов?
@selfedu_rus Жыл бұрын
в основном в циклах
@barma13092 жыл бұрын
Опять чёрная магия пошла
@ФедорПтичкин-з8п2 жыл бұрын
после просмотра видео возникло два вопроса: 1. можно ли как-нибудь определить количество объектов в итераторе? 2. можно ли как-то понять, что перебрал все объекты в итераторе (не используя обработчик ошибок)?
@selfedu_rus2 жыл бұрын
На оба вопроса: нет, нельзя
@denistalko65853 жыл бұрын
Интересно, спасибо вам! Подскажите, а в каких случаях используется итератор? В каких практических задачах лучше использовать именно итератор, а не тот же цикл for? Я пока не очень вижу разницу, где лучше применять одно, а где - другое.
@selfedu_rus3 жыл бұрын
Цикл for и использует итератор. Правило простое, если можно без итератора. то применять его не нужно, как появится задача, где он необходим, вы естественно, им воспользуетесь.
@denistalko65853 жыл бұрын
@@selfedu_rus понятно, спасибо!
@Edward-y2h3 жыл бұрын
@@selfedu_rus интересно можно ли использовать функцию next внутри for) пошёл тестить)
@selfedu_rus3 жыл бұрын
@@Edward-y2h не пробовал )
@skiffsolo94192 жыл бұрын
Так и не понятно в каких случаях может пригодиться итератор. Без практического примера применения этот урок оказался слаб. for element in iter_ object: прекрасно предоставляет доступ к элементам итерируемой коллекции. Я пока вижу только один вариант, когда нужно сразу перебирать несколько разных итерируемых объектов. Практического примера применения очень не хватает.
@blindboy00728 күн бұрын
смотрю 2х для повторения
@_mrmark Жыл бұрын
Что то я так и не понял для чего это нужно если есть цикл for?
@TurboDeaz6 ай бұрын
это встроенный метод в for. Просто показал для общего развития
@babeandproducer2 жыл бұрын
Вроде бы все просто, но черт побери как это все запомнить. Мне кажется бух шпаргалок перед глазами я не смогу ничего написать…
@invisiblealex0072 жыл бұрын
я немного не понял пары моментов. А зачем нужны итераторы отдельно, если есть циклы? у него какая-то магия особая? типа этот тот же цикл, но на паузе? можем обратится к элементу и не двигаться дальше?
@selfedu_rus2 жыл бұрын
циклы при переборе коллекций используют итераторы, сначала берут у коллекции итератор, а затем, перебирают его, пока не произойдет исключение StopIteration. Итератор - универсальный механизм для перебора любых коллекций.
@invisiblealex0072 жыл бұрын
@@selfedu_rus да, это я как раз и понял. Даже есть еще "лучшее" объяснение, которое везде используют: итератор - это как раз часть цикла. Вопрос все равно открытый: зачем нужны отдельно итераторы, если есть конструкция с for? Какая ценность того, что вместо for я буду использовать iter...next()?
@selfedu_rus2 жыл бұрын
@@invisiblealex007 как правило for будет достаточно во многих случаях, но понимание итератора важно, т.к. возможно вы захотите реализовать свою коллекцию, которая также должна перебираться с помощью итератора, и здесь знание как это все работает очень пригодится. Ну и второе, непосредственно через итератор можно выбрать первые k значение, а for перебирает все.
@olegkomlev2 жыл бұрын
@@invisiblealex007 Цикл for перед выполнением цикла создает итератор из того, что стоит после in и в начале каждой итерации вызывает функцию next, пока она не даст исключение StopIteration. При помощи своего итератора можно вызывать next в любой момент. Например получить сразу 2 элемента подряд, если по текущему элементу станет ясно, что на этой же итерации нужен второй (а иногда не нужен).
@invisiblealex0072 жыл бұрын
@@selfedu_rus с одной стороны плнятно - проосто знание механизма, с другой стороны можно тоже первые k элементы, , скажем, в строке из 30 символов перебрать,если сделать чрез по индексу) так, что это пример не сильно убедил - это все тот де for. Или в огромном словаре считываем только первы 5 значений. Пока пользы от итератора не увилел, а вот следующий комментарий немного прояснил ситуацию. Кастомный итератор может брать по 2а значения за раз и что-то с ними делать.
@КириллСмаковенко3 жыл бұрын
range и enunerate это классы :)
@selfedu_rus3 жыл бұрын
нет, функции
@КириллСмаковенко3 жыл бұрын
@@selfedu_rus Перейди в пайчарме в range
@selfedu_rus3 жыл бұрын
@@КириллСмаковенко Да, не знал, а в ресурсах всюду функция пишут. Спасибо.
@mantrida3 жыл бұрын
По утиной типизации их называют функциями, так как они ведут себя как функции. Но технически вы правы.
@datorikai99113 жыл бұрын
for ... next - BASIC
@Jetscrolls Жыл бұрын
Это Пайтон такой умный, а в КуБейсике приходилось в конце цикла писать Next)
@IT-roivuАй бұрын
Я так и не поняла, для чего нужен итератор, если есть for
@selfedu_rusАй бұрын
for перебирает объекты, используя итератор; не было бы итераторов, не работал бы и for ))
@IT-roivuАй бұрын
@@selfedu_rus ну, я говорила с практической точки, ну, там, примеры, как, где, зачем они используются на практике
@blindboy00728 күн бұрын
@@IT-roivu они используются в циклах, на них строится язык программирования этим все сказано
@x056x2 ай бұрын
Слов много, а зачем это нужно не ясно. Зачем нужны данные методы при наличии циклов? Почему они не являются внутренними дандер-методами, скрытыми под капотом?
@Илья-м4о5я Жыл бұрын
в чем проблема это сделать с помощью цикла 'for'
@selfedu_rus Жыл бұрын
for именно эти функции и использует (заглянули под капот)
@андрейхоменко-и5я3 жыл бұрын
Цикл for неявно вызывает функцию next... Мой мир перевернулся..
@prosto4elovek982 жыл бұрын
Что у автора с дикцией? В некоторых словах нормально звуки выговаривает, некоторые нет... Стоит поработать над этим моментом и будет топ!