Python Education
关闭频道
Обучаем Python как маленьких, так и взрослых Ссылка: @Portal_v_IT Сотрудничество: @oleginc, @tatiana_inc Канал на бирже: telega.in/c/python_educa РКН: clck.ru/3MnbNV
显示更多8 764
订阅者
-624 小时
-137 天
-6430 天
帖子存档
8 764
Избегайте вложенных циклов с помощью product
Когда программа становится сложной, неизбежно приходится писать вложенные циклы. Однако вложенные циклы делают программы более сложными для чтения и сопровождения.
К счастью, в Python всегда можно избежать вложенных циклов с помощью встроенной функции
product().
Python Education8 764
Оператор морж (:=) или способ записывать данные в переменную о котором вы не знали
Начиная с Python 3.8, появился новый синтаксис под названием «оператор морж» или walrus operator, который может присваивать значения переменным как часть более крупного выражения.
Оператор := получил свое милое название из-за глаз и бивней моржа.
Python Education
8 764
Разработчики Google и Twitter рекомендуют удалить соцсети и переехать в лес, чтобы избавиться от информационного шума. Но есть и другое решение.
Этот телеграм-бот сортирует ваши каналы и показывает актуальные посты, заменяя сотни уведомлений в ленте.
Еще одна крутая фишка — дайджест, он собирает краткие заголовки важных тем за целый день.
Бот абсолютно бесплатный. Приятного использования!
https://t.me/AiOpenNewsbot?start=c291cmNlPWRlc2lnbmVyZ2FuZw
8 764
Вложенный генератор внутри генератора — двумерная из двумерной
Общий синтаксис: [[expression for y in x] for x in iterator]
Применение: Обходим двумерную структуру данных, сохраняя результат в другую двумерную структуру.
Python Education
8 764
Генератор итерирующийся по генератору
Так как любой генератор может использоваться как итератор в цикле for, это так же можно использовать и для создания генератора по генератору.
При этом синтаксически это может записываться в два выражения или объединяться во вложенный генератор.
Python Education
8 764
Вложенные циклы for где циклы идут по независимым итераторам
Общий синтаксис: [expression for x in iter1 for y in iter2]
Применение: генерируем одномерную структуру, используя данные из двух итераторов.
Python Education
8 764
Repost from ВИЛСАКОМ РЕД / WYLSACOM RED
⚡️Мегарозыгрыш призов! Разыгрываем два MacBook Pro 14’’ Space Gray на M3, два iPhone 15 Pro Max 256 ГБ цвета Black Titan и Natural Titan, два Oculus Quest 3.
Для участия нужно:
• подписаться на @whackdoor;
• подписаться на @wylsared;
• нажать кнопку «Участвую».
Итоги конкурса подведёт бот 5 декабря в 19:00, он выберет победителей. Порядок победителей будет такой: первое имя — MacBook Pro 14, второе — MacBook Pro 14, третье — iPhone 15 Pro Max 256 ГБ Natural Titan, четвёртое — iPhone 15 Pro Max 256 ГБ Black Titan, пятое и шестое — Oculus Quest 3.
Приз отправляем за наш счёт по РФ, Беларуси и Казахстану. Всем удачи!
⚠️ Если кнопка подвисла — не переживайте, вас все равно зарегистрирует, просто выполните условия и нажмите «Участвовать».
8 764
Вложенный генератор внутри генератора — двумерная из двух одномерных
Общий синтаксис: [[expression for y in iter2] for x in iter1]
Применение: генерируем двумерную структуру, используя данные из двух одномерных итераторов.
Python Education
8 764
Перебор части итерируемого.
Иногда бывает задача из очень большой коллекции или даже бесконечного генератора получить выборку первых нескольких элементов, удовлетворяющих условию.
Если мы используем обычное генераторное выражение с условием ограничением по enumerate() индексу или срез полученной результирующей коллекции, то нам в любом случае придется пройти всю огромную коллекцию и потратить на это уйму компьютерных ресурсов.
Выходом может быть использование функции islice() из пакета itertools.
Python Education
8 764
Работа с enumerate()
Иногда в условиях задачи в условии-фильтре нужна не проверка значения текущего элемента, а проверка на определенную периодичность, то есть, например, нужно брать каждый третий элемент.
Для подобных задач можно использовать функцию enumerate(), задающую счетчик при обходе итератора в цикле.
Python Education
8 764
Генерация строк
Для создания строки вместо синтаксиса выражений-генераторов используется метод строки .join(), которому в качестве аргументов можно передать выражение генератор.
Обратите внимание: элементы коллекции для объединения в строку должны быть строками!
Python Education
8 764
Создание коллекций из выражения-генератора (ч.2)
Написание выражения-генератора сразу внутри скобок вызываемой функции создания коллекции.
Python Education
8 764
Я бывший банкир и у меня 22 банковские карты. Но не торопитесь смеяться. Потому что за 6 лет работы я научился комбинировать карты разных банков так, чтобы они пассивно приносили мне по 20-25 тысяч каждый месяц. Знаете, как?
Например, вы можете выпустить себе несколько бесплатных кредиток со съёмными лимитами, без процентов снимать с них деньги, и в наглую класть их на накопительные счета под 15-17% — за счёт чего с пачки бесплатных карт вам будет прилетать по 20-25 тысяч каждый месяц.
Таких схем на самом деле десятки — просто о них почти никто не знает. И если вы не хотите в буквальном смысле терять свою вторую зарплату — подпишитесь на Беспощадный Банкстер. Там я даю все наводки, учу собирать по 10 тысяч в месяц на тестировании карт, зарабатывать по 25к на пачке бесплатных кредиток, да и в конце концов — навсегда отключать комиссии по картам, убирать плату за обслуживание, и даже проценты по кредитам. Поверьте, у вас буквально появится вторая зарплата — и вы её уже никогда не потеряете.
8 764
Создание коллекций из выражения-генератора (ч.1)
Передачей готового выражения-генератора присвоенного переменной в функцию создания коллекции.
Python Education
8 764
Особенности выражений-генераторов (ч.2)
Обратите внимание, что после прохождения по выражению-генератору оно остается пустым!
Выражение-генератор может быть бесконечным.
К выражению-генератору не применимы срезы!
Из генератора легко получать нужную коллекцию. Это подробно рассматривается в следующей главе.
Python Education
8 764
Особенности выражений-генераторов (ч.1)
Генаратор нельзя писать без скобок — это синтаксическая ошибка.
При передаче в функцию дополнительные скобки необязательны.
Нельзя получить длину функцией len()
Нельзя распечатать элементы функцией print()
Python Education
8 764
Ветвление выражения
Условия ветвления пишутся не после, а перед итератором.
В данном случае if-else это не фильтр перед выполнением выражения, а ветвление самого выражения, то есть переменная уже прошла фильтр, но в зависимости от условия может быть обработана по-разному!
Python Education
8 764
Совет на 2024 год: научитесь разрабатывать приложения
Спрос на IT-профессию запредельный, а рук не хватает 92% компаний. Приложения интегрируются всюду: от простых детских игр до айти-решений, которыми пользуются магазины, аптеки, банки и даже больницы.
И не нужно для этого вкалывать 24/7 или просиживать штаны в офисе. Достаточно держать в подписках канал Заметки разработчика.
Внутри: как сделать выжимку нужной информации из нескончаемого потока воды, выйти на доход 500+ тыс рублей в месяц, грамотно пройти собеседование и получить зарплату в 2-3 раза выше остальных.
Пройдите путь от "как это работает" до успешного разработчика: @developer_notes
8 764
Выражения-генераторы
Выражения-генераторы (generator expressions) доступны, начиная с Python 2.4. Основное их отличие от генераторов коллекций в том, что они выдают элемент по-одному, не загружая в память сразу всю коллекцию.
Python Education
现已上线!2025 年 Telegram 研究 — 年度关键洞察 
