Добавить в корзинуПозвонить
Найти в Дзене

Самый короткий путь от новичка программиста Python до профессионала, причём легко.

Пишет Дмитрий ник imka. Добрый вечер. Вроде понятненько. Надеюсь кто будет смотреть тоже будет понятно. Домашнее задание прилагаю. Валерий не много не понятно куда двигаться дальше на какие уроки обратить внимание? Сейчас двигаюсь в разделе разработки т.к. в разделе с нуля в строках нужны знания классов. Сообщение 1. Дима, подробнее посмотрю позже. Все верно по строкам и другим типам данных. Если человек не изучал функции, то типы данных, как лысому припарка, просто познакомится. С классами все становится на места. Я рассказывал, что типы данных, каждый человек должен проходить в три этапа. Я специально использовал слово должен, так как на практике получается иное. Как правило в большинстве школ дают типы данных с нуля и они мутно усваиваются и на этом больше не вспоминают. Получается ситуация, та же что, если при строительстве дома рассказать план строительства, но кирпичи вообще не привезти и тогда строитель ищет из чего строить и начинают строить из того, что у кого ес
Оглавление

Пишет Дмитрий ник imka.

Добрый вечер.

Вроде понятненько. Надеюсь кто будет смотреть тоже будет понятно.

Домашнее задание прилагаю.

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

Сообщение 1.

Дима, подробнее посмотрю позже.

Все верно по строкам и другим типам данных. Если человек не изучал функции, то типы данных, как лысому припарка, просто познакомится.

С классами все становится на места.

Я рассказывал, что типы данных, каждый человек должен проходить в три этапа.

Я специально использовал слово должен, так как на практике получается иное. Как правило в большинстве школ дают типы данных с нуля и они мутно усваиваются и на этом больше не вспоминают.

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

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

Поэтому на начальном этапе единственное что можно дать это как выглядит тип данных, например список так list = [], и и .д.

Лучше заниматься языком по 15 минут, но каждый день толк будет.

Теперь ответ на ваш вопрос.

Для полноценного понимания типов данных в Python нужно сделать следующее:

Основное чем пользуемся - это последовательности.

liststrtuple, and bytes.

Сначала сам ответ на вопрос зачем понимать последовательности в целом.

строка, кортеж, список - это последовательности.

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

Поэтому я использую другой подход.

Я писал ранее, что рекомендую проходить в несколько этапов.

В любом случает, для полноценного понимания типов данных, нужно:

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

Нужно понимать классы, так как нужно понимать, что такое последовательность.

https://docs.python.org/3/glossary.html#term-sequence

В самом определении последовательности вбиты знания, для типов.

итерация https://docs.python.org/3/glossary.html#term-iterable

извлечение по срезам __getitem__()

подсчёт __len__(),

кроме этого вот здесь определены минимальные методы последовательности

https://docs.python.org/3/library/collections.abc.html

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

https://www.youtube.com/playlist?list=PLuZJ9n46uMzVQLs2u4hwjfcQkZ8QVKea1

Вернёмся к последовательностям.

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

Разберёт изменяемые не изменяемые. Например строка неизменяемая последовательность. Это значит, что питон заботится о том, что бы данные не были утеряны.

Впервые созданная строка хранится в оригинале, все последующие действия создают новую строку и возвращают её как результат.

Но ему не нужно уже запоминать долго отдельно списки, или строки и т .д.

Он чётко будет понимать, что последовательность может:

Подсчитать элементы, то есть есть порядок.

Извлечь определённый элемент(это называется извлечение по срезу __getitem__())

Все это происходит благодаря итерации (подсчёту по одному).

Станет понятно, что все это делают все последовательности,

останется посмотреть сами методы списков, строк, кортежей.

Останутся словари, они после всего этого понимаются легко, так как понять ключ, значение просто.

Вот вам пока задание.

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

Второе направление нужно вам продолжить функции, разберитесь пока. что такое функции обратного вызова, они везде, например если посмотреть уроки по request, то там они тут как тут:

https://www.youtube.com/playlist?list=PLuZJ9n46uMzUJrTZSCrDB126PgGzIRH0e

Уроки , которые сейчас сделал, дальше тоже с ними столкнёмся

https://www.youtube.com/playlist?list=PLuZJ9n46uMzVQLs2u4hwjfcQkZ8QVKea1

Сделаете дам заданий по функциям ещё.

Занимайтесь функциями, вам должно быть интересно, так как они у вас плавают и уверен плавают у многих ребят.

Методы в классах - это те же функции, только в классе, так что решите, для себя две задачи.

И хоть я вам дал составить план, но один пункт вам дам сам.

Итерации, очень много делал по этому Денис около месяца. именно столько времени нужно отдать итерациям, без них в языке ни куда, если вы внимательно читали что я написал и посмотрели уроки. которые я ад здесь, то вы вод очевиден, если нет уверенного понятия итераций, то какой код мы будем писать, хороший точно не будем, в 98% кода явно или за кулисами используется итерация. Это нужно понимать очёнь твёрдо.

вот к чему вас должны привести итерации, к понимаю. как их использовать и это знание уже должно быть на уровне логики. Попробуйте пройтись по урокам Дениса и составить план по изучению итераций.

https://groups.google.com/g/spb-tut/c/P9qAAU1-Jfs/m/PK8y561vAAAJ

Пока ограничиваюсь.

P.S. Да, а классы на этой неделе уже начнём. я обещал Денису. Так. что хочет подтягивайте вместе с ним.

Денис во второй половине недели дам задание.

Все сбрасывайте в группу.

Сообщение 2.

Дмитрий, я вас попрошу при прохождении классов мне напоминать о типах данных.

Я их вбил в план, но участники с разными знаниями и я могу закрутится.

Я вижу. что у вас получается, молодец.

Вы щепетильно делаете домашние задания - это все класс.

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

В одной части вы делаете домашние задания.

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

Первое. Можете быстро сформулировать запрос (что это и для чего).

Второе. найти в документации.

Третье. При работе с этим элементом (предвидите исключения и соответственно продолжать изучение только через исключения).

Четвёртое. Продолжайте наращивать изучение функций, праметры усвоили. теперь нужно ими размышлять, да ещё и становится на место пользователя.

как в этом примере. вам он знаком

get_object_or_404(klass*args**kwargs) - думаю класс это не опечатка, просто что бы не писать зарезервированное слово, часто ещё пишут <to>, что и есть обозначение модели или чего то ещё.

Но сам факт, смотрите разработчики не зря поставили параметр klass, как обязательный позиционный, если полшьзователь не укажет модель, то вся логика летит к чертям. Поняли о чём я.

И с функциями пока у вас не тот уровень. который бы вы хотели видеть. Так что дерзайте.

Все изучайте через функции, но теперь добавляя новые знания, итераторы и вообще все действия последовательности по отдельности, смотрите всегда в рамках действия.

Пятое. И вспоминайте, что я говорил Денису про полуфабрикат (другого не придумал), до паттерна эти мелочи не дотягивают. А как под другому назвать может вы придумаете.

Можно шаблон, но это не совсем верно то же.

Иными словами. вот Денис прошёл итераторы и хотел ужеоставить, что было бы забвением на предыдущих знаний. Так как он делал, код, которого много и он стал серым.

Запоминать нужно применение, как он сделал здесь:

https://groups.google.com/g/spb-tut/c/P9qAAU1-Jfs/m/PK8y561vAAAJ

Тогда будет все на своих местах.

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

Он работал с документацией и знает, где искать.

Практиковался и получил уверенность.

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

например метод __init__ создаст, то есть не проведёт итерацию, а проверит можно ли интегрировать данный объект

Функция __iter__() возвращает итератор для данного объекта (массив, набор, кортеж и т. д. или пользовательские объекты). Он создает объект, к которому можно получить доступ по одному элементу за раз, используя функцию __next__(), которая обычно удобна при работе с циклами.

Прежде чем чего то пересчитывать нужно убедиться, а можно ли это пересчитывать, ведь дай число 1, что там можно пересчитывать?

все эти вещи можно посмотреть в глоссарии, сейчас нужно добиваться, что бы при чтении документации эти вещи были ясны и сразу понимались при чтении слова, итератор, итерируемый объект и т. д.

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

Шестое. Все выше написанное будет знаниями. при одном условии, когда вы сможете их вывести на доступное человеку мышление.

Смотрите, если вам нужно перенести 3 кг рыбы или 3 килограмма грибов, или три килограмма болтов, то Вы без труда определите что вам нужна сетка.

Ведь при большом желании в руках вы не унесёте, но если нет сетки. вы можете снять куртку и туда сложить, то есть у вас есть решение уже или вы его найдёте на месте.

Тоже самое в программировании, это видно здесь

https://www.youtube.com/playlist?list=PLuZJ9n46uMzVQLs2u4hwjfcQkZ8QVKea1

и

это понял Денис

https://groups.google.com/g/spb-tut/c/P9qAAU1-Jfs/m/PK8y561vAAAJ

И он начал осознавать, применение итераторов на уровне логики и мышления.

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

И пусть это будут страницы, мы удаляем один элемент, но как понять. что осталось 49, вы можете сказать, а я и так знаю, а если на сайте 50 000 страниц, и 50000 пользователей, одни добавляют, другие удаляют.

Но что бы был порядок, после удаления, для того, что бы убедиться есть только один способ, перечитать их снова.

А как пересчитать, провести итерацию. Так проще, сделать это автоматом в класс вложить итерацию. что бы она проводилась на автомате. и если что выдавала ошибку.

То есть, что получается, мы осознаем, зачем нам итерации практически.

Это и есть настоящее обучение программированию. Дело преподавателя направить на этот путь, когда ученик понимает что и как пройти, проблем никогда не возникает.

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

Вот это человек легко запомнит, как в примере с сеткой, а к этому легко вспомнится код и где это искать и как это делать, как следствие раннего изучения.

То есть в голове сходятся несколько вещей уже реализованных не просто в опыт, а в опыт со смыслом применения.

Документация - чтение и понимание - запрос в голове - код - понимание. как использовать. Абсолютно тоже самое. что вы используете в жизни каждый день(ежедневно).

И так далее.

Если Мы понимаем. что сделать, думаю понимаете.

Как сделать (составите с этого план)

Для чего сделать (понимание. как использовать.)

ТО остаётся только сделать и не важно быстро или медленно, важно качественно, поэтому я не сомневаюсь, что это сделать может каждый. кто хочет и как следствие будет писать в данном случае итераторы, читать итераторы, знать где применять итераторы.

Цена вопроса разобрать три понятия итератор. итерация, объект итерации.

Единственное знание, которое здесь нужно это понять, что итерация это пересчёт по одному.

Зайдите на кухню к себе и посчитайте мебель вот вам и итерация.

Сложно? Нет не сложно. Вот и научитесь переводить слова программирования в обычные, просто спец терминами удобнее рассуждать.

итерация - iteration

если будем идти через исключения, то столкнёмся примерно с тем

Error calable jbject is not an iterable (если мы изучили все понятия), то нам вполне понятно вызываемый объект не повторяемый.

Дальше уже будем соображать сами.

Если у нас список, то мы понимаем, что он последовательность, а последовательность можно пересчитать, и все равно хоть мы знаем, но все равно пишем проверку.

То есть добавляем метод __iter__, что бы убедится, что мы подготовим последовательность, как объект дл/я итерации, то есть возможность применения метода __next__ , здесь понятно без слов, переход к следующему объекту.

Зачем замарачиваться дальше.

Есть __iter__

есть встроенная функция iter()

есть itertools - Функции, создающие итераторы для эффективного цикла или готовые решения.

Этот модуль реализует ряд итераторов строительных блоков , вдохновленных конструкциями из APL, Haskell и SML. Каждый был переделан в форму подходит для питона.

https://docs.python.org/3/library/itertools.html

Надеюсь смысл уловили полезной информации больше чем достаточно.

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

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

Боже мой это легко проверить. Как Вы хотим покупать что-то машину, женщины сумочку, присмотритесь везде это начитаете видеть.

Вывод, пройдите качественно. Любому человеку пересчитать 10 яблок в корзине плетённой, точно под силу, ну назовите это итерацией, вот вам и программирование.

Все точно получится.

Сообщение 3.

Знания о которых мы говорили, относятся к любым языкам программирования. Это нужно чётко понимать.

Будет немного разная реализация, но смысл и понятия будут везде идентичные.

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

https://kotlinlang.ru/docs/iterators.html

та же картина, просто описание

https://developer.mozilla.org/ru/docs/Web/JavaScript/Guide/Iterators_and_Generators

В С ++ немного сложнее, но разобраться можно

соотвественно действия.

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

подключить библиотеку

Итератор — это такая структура данных, которая используется для обращения к определенному элементу в контейнерах STL. Обычно из используют с контейнерамиset, list , а у вектора для этого применяют индексы.

#inlcude <iterator>

ручками пишем, что и где итерировать

<контейнер> <его тип> :: iterator <имя итератора>;

указать методы начала и конца

begin() и end().

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

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

нужно указать , тыкнуть куда этой тупице смотреть

Указатель — это переменная, которая хранит адрес памяти объекта. Указатели широко используются в C и C++ для трех основных целей:

  • для выделения новых объектов в куче,
  • для передачи функций другим функциям
  • для итерации элементов в массивах или других структурах данных.

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

Так как самих программистов все это дело напрягало, то нашлись люди. которые начали писать шаблоны. тогда вроде. как и С ++ может быть более очеловеченным

https://isocpp.org/files/papers/p0186r0.html

Но смысл тот же, разница в том, что нужно все прописать ручками. что не есть кайф.

Люди допетрили, что геморойничать с С++ никому то не нужно, одно дело в старые время сидели и 30 лет пилили виндовс, ну здесь можно ковыряться,

поэтому придумали RUST в будущем в многом заменит С, С++ С#

RUST

итераторы

https://doc.rust-lang.org/std/iter/trait.Iterator.html

Как вам поступать, КАЖДЫЙ РЕШИТ САМ ДЛЯ СЕБЯ.

Тем не мене я написал все это не просто так.

Вывод прост. Хочешь понимать материал досконально проверь свои знания на других языках. здесь проверяется умение писать сходу. Понятия одни и те же, проверьте можете написать, если изучили верно, то точно сможете.

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

Одно точно, без итерации не обойдётся не один язык, так же верно, как ни один человек не сможет жить без подсчёта чего-либо в хозяйстве.

****************************************

Подводные камни

**************************************

Иногда читаю сообщения в сети, как рассуждают новички. "Я буду сейчас учить Питон, а какой потом язык изучать. что посоветуете?"

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

Мне жаль таких ребят, так как мне понятно, пока они что бы не делали не будут писать, пока не посмотрят по иному.

Ведь не придёт же в голову вам такое. Сегодня мы пойдём учится выкручивать свечи заигания с жигулей, а завтра у нас так же серьёзное занятие мы будем выкручивать свечи с форда, а после завтра с мерседеса.

Но ведь понятно что это бред. Это в жизни понятно.

а в программировании, не понятно.

А дело здесь всего лишь в объяснении подхода к программированию.

Конечно если человеку сказать что сегодня мы будем изучать Питон, а через пол года будем изучать JS.

С этого подхода ничего не выйдет хорошего и писать человек точно не будет.

Все дело в самом подходе и именно формулировке подхода, когда меняется замысел и сама задача, для ученика.

Давайте сформулируем по другому.

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

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

Когда человек подходит именно с таким подходом, то писать он точно будет.

Можете проверить на практике, изучите итераторы, как мы описывали выше, а потом сходу переходите к другим языкам программирования и читайте, если все сделано по моей методике, то вы явно заметите. что смысл понимаете сразу, ну а синтаксис он учится за пару повторений. И вот вы уже пишите итераторы на втором, третьем, четвёртом языке программирования.

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

Правило следующее изучать не менее двух языков, так как писать код на третьем и так сможете.

Вспомните, кто был в школе уже более пол года, как Денис(keplerde), присылал файлы работы с функциями с разных языков программирования, с Go, Си, JS, но так же вспомните, что объяснить это было не так просто, Денис изучал много материала, но у него не было системы, а системы не было потому что не было понимания, как правильно изучать язык программирования, в школе он нашёл этот подход и резко начал писать.

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

У него был опыт ,что нужно смотреть и зачем это смотреть?

ранее эти пункты у него выпадали.

Я ведь не зря говорю постоянно, при изучении функций питон, посмотрите функции Solidity

https://dapp.spb-tut.ru/pages/solidity-ide/best-ide-solidity/category/solidity-function/

пробивает капитально, так как одно дело, вы пишите код, что бы он работал, другое дело, как в solidity , Вы пишете код, от которого зависит цена контракта, выбор типа юданных. выбор места хранения все влияет на цену, поэтому я всегда рекомендую обязательно знакомится с solidity, так как это будет очень положительно влиять на написание функций в другом языке. например в питон, так как мы сразу начинаем задумываться, что наш код имеет цену, но в питон эта цена не выражена в деньгах напрямую, но все же посмотреть на код со стороны безопасности, производительности, меньше строк кода и точнее код вас точно подвигнет. Кроме этого solidiy явно вводит проверки в функциях, но это тоже вас натокнёт на многие мысли.

https://dapp.spb-tut.ru/pages/solidity-ide/best-ide-solidity/category/solidity-function/

И возвращаясь кeplerde, когда я давал задания Денису, то увидил, что ему пока сложно воспринимать код слоями или проще говоря выделять смысловые блоки целиком, поэтому решил попроще записать несколько уроков, что бы показать, что такое профессиональный код, показать, что код разделён на смысловые блоки и эти блоки очень хорошо видны сразу.

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

https://www.youtube.com/playlist?list=PLuZJ9n46uMzVQLs2u4hwjfcQkZ8QVKea1

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

Уверен. что Вы поняли насколько серьёзно нужно отнестись к этой теме. как собственно и к любой другой.......

Теперь добавьте к этому итераторы и вот у вас уже две основные вещи относящиеся к любым языкам.

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

У вас есть все необходимые смыслы:

Что это?

для чего это?

как это происходит?

Где это искать?

Какие запросы вводить?

Где применять?

зачем применять?

Ну и скажите мне теперь, что трудно научится программированию человека. Нет не трудно. Важен подход.

А думать. как программист, как Вы поняли со статьи уже умеет абсолютно каждый человек(НАПРИМЕР ПЕРЕСЧИТАТЬ ЯБЛОКИ В КОРЗИНКЕ, КОТОРЫЕ СОБРАЛ С ДЕРЕВА). Замените слово пересчитать на слово провести итерацию.

итерация - iteration
итератор - iterator
итерируемый объект - iterable

начните с этих понятий.

https://docs.python.org/3/glossary.html

понедельник, 30 января 2023 г. в 11:55:36 UTC+3, admin:

Интересен мой подход, получите доступ недорого:

Выбери свой доступ.

Рекомендуется оценить мощь. Обязательно глянь подборку видео, как растут ребята, у тебя тоже получится.

Подборка видео, для прорыва в мозгах, изменит подход к изучению программирования.

https://spb-tut.ru/programming_school/python-programming-video/

Джанго + Питон:

https://spb-tut.ru/programming_school/pay-django4/

Либо Джанго + Питон + Блокчейн:

(Хит продаж) Внизу страницы 400 BYN:

https://spb-tut.ru/programming_school/pay-dapp-spb-tut-ru/

Обучение программированию по индивидуальной программе.

https://spb-tut.ru/programming_school/individual-programming-training/

Групповые занятия по программированию.

https://spb-tut.ru/programming_school/group-programming-lessons/

Все получится точно.