Поколение Python 🐍
50.3K subscribers
2K photos
16 videos
6 files
866 links
Серия курсов по языку Python от BEEGEEK 🐝.

Сайт: pygen.ru
Мерч: shop.pygen.ru
Чат: @pygen_ru_comments
Бот: @pygen_ru_bot
Поддержка: @pygen_ru_support

Перечень РКН: https://www.gosuslugi.ru/snet/673650d605391b3bfb5541c0
Download Telegram
Друзья, недавно мы рассказывали про бесплатные уроки в курсах для профи и ООП. А теперь мы добавили открытые уроки в каждый модуль курса "Базы данных и SQL"! 😎

Бесплатные уроки позволяют вам оценить качество материала и убедиться в своем желании купить курс. 😍

Смотрите открытые уроки по ссылкам:

🤩 Базы данных
🤩 Извлечение данных
🤩 Функции даты и времени. Часть 1
🤩 Агрегатные функции
🤩 Подзапросы. Часть 1
🤩 Внутреннее соединение
🤩 Удаление данных
🤩 Создание таблиц. Часть 1
🤩 Обобщенные табличные выражения. Часть 1
🤩 Пользовательские функции. Часть 1
🤩 Ранжирующие функции. Часть 1
🤩 Регулярные выражения. Часть 2

Ставьте реакцию:

🔥 — если вам интересен SQL и базы данных
👀 — если вам нужен только Python

#курсы #поколениеpython
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥212❤17👀1464👌3😎2🆒1💘11
👍167👨‍💻6🔥55🤣3❤22🤯1🆒1
Выберите вариант ответа
Anonymous Quiz
6%
произойдет ошибка
58%
BEEGEEK
4%
Beegeek
32%
beegeek
72👻30😭25👏15😁1010🤔6🙈3❤21
Друзья, недавно мы обсудили области видимости в Python. Сегодня поговорим об операторах global и nonlocal.

😕😫😢😒😏😫

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

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

Созданная внутри функции с помощью оператора global переменная будет доступна как локально, так и глобально.

❗️ Переменные, перечисленные в инструкции global, не должны быть объявлены перед global и не должны быть аргументами функции, иначе возникнет ошибка SyntaxError.

🥺😢🥺😫😢🙂😏😫

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

❗️Переменные, перечисленные в инструкции nonlocal, должны существовать в объемлющей области видимости, иначе возникает ошибка SyntaxError.

✏️ Используйте оператор global только в случае острой необходимости. Изменение значения глобальной переменной из функции может привести к большому количеству ошибок, так как глобальная переменная может использоваться в других частях программы.

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

Ставьте реакцию:

🔥 — если уже подписались на новости о курсе для самураев
👀 — если пока проходите предыдущие курсы

#python #курсдлясамураев #полезныйматериал
Please open Telegram to view this post
VIEW IN TELEGRAM
👀49🔥238❤643👍2🤷‍♀1
Друзья, мы знаем, что посмотреть вечером пятницы. 👀

🌟 Недавно создатель "Вконтакте" и Telegram Павел Дуров дал огромное 4-часовое интервью. Он рассказал американскому блогеру и ученому в области информатики Лексу Фридману:

✍️ о своей философии и образе жизни
✍️ об инженерных и дизайнерских решениях Telegram
✍️ об инвестициях в биткоин
✍️ об отказе от повседневного использования смартфона
✍️ и многом другом

🚩 Смотрим на Youtube или ВК.

Ставьте реакцию:

🔥 — если уже слышали о выходе интервью
👀 — если пропустили эту новость

#чтопосмотреть #поколениеpython
Please open Telegram to view this post
VIEW IN TELEGRAM
18🔥67👀46❤1154🙈32🤷‍♂1
31😁7❤4👍43🔥2👾2🆒11
Выберите вариант ответа
Anonymous Quiz
55%
True
22%
False
23%
произойдет ошибка
5920🔥11😱8👀4👍2👻22❤1🆒1
Друзья, а вот и новое слово недели! ✨

✏️ Протокол — это набор правил и соглашений, определяющих способ взаимодействия между различными компонентами системы. Протоколы можно рассматривать как "язык общения" между программами, устройствами или слоями программного обеспечения.

📎 Примеры протоколов:

🔘сетевые: правила обмена данными между компьютерами (HTTP, TCP/IP)
🔘 аппаратные: взаимодействие устройств на физическом и логическом уровнях (USB, PCI)

📎 В Python многие встроенные механизмы опираются на протоколы поведения:

🔘итераторы: объект с методами __iter__() и __next__() можно использовать в цикле for
🔘последовательности: объект с методами __getitem__() и __len__() ведет себя как список или кортеж
🔘дескрипторы: объекты с методами __get__(), __set__(), __delete__() управляют доступом к атрибутам
🔘контекстные менеджеры: объекты с методами __enter__() и __exit__() можно использовать в конструкции with

Ставьте реакцию:

🔥 — если знали, что значит протокол в программировании
👀 — если слышали только про протокол допроса

#поколениеpython #словонедели #протокол
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥95👀7210❤66😁3👍22
Друзья, сегодня у нас графическое уравнение. 👨‍🎨

🧠🧠🧠🧠

Каждый пин-значок обозначает некоторое целое неотрицательное число. Числа на картинке — это суммы по столбцам и строкам.

🤔 Какое число должно быть указано в первой строке?

Ответы пишите в комментариях, не забывая про скрытый текст.

⏰⏰⏰⏰⏰⏰⏰ Заказать крутые пины для программистов и инженеров можно в магазине "Поколения" на Ozon.

Ставьте реакцию:

🔥 — если любите задачи с картинками
👀 — если предпочитаете сухие цифры

#задача #поколениеpython
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥73❤15👀12👍655❤‍🔥11
🎣 Друзья, сегодня разбираемся, что такое фишинг и как на него не попасться. 🐠

📌 Фишинг (от англ. "рыбалка") — это когда мошенники "закидывают удочку" и пытаются выманить у вас личные данные: логины, пароли или данные карт.

📢 Как это работает:

🟡 вам приходит письмо или сообщение, якобы от банка, сервиса или знакомого
🟡 внутри — ссылка на поддельный сайт, который выглядит как настоящий
🟡 если вы введете данные, они попадут в руки злоумышленников

🔥 Как распознать фишинг:

🔵подозрительный адрес отправителя (например, support@paypalll.com вместо paypal.com).
🔵ошибки в тексте, странные формулировки
🔵запугивание и давление: "Срочно подтвердите аккаунт, иначе он будет заблокирован!"
🔵ссылка ведет не туда — наведите курсор и проверьте

📝 Что делать, если все-таки кликнули по фишинговой ссылке:

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

🤦 Самый простой способ предотвратить утечку из-за фишинга — включить двухфакторную аутентификацию.

Ставьте реакцию:

🔥 — если сталкивались с фишингом сами или знаете таких людей
👀 — если никогда с таким не встречались

#япознаюмир #фишинг #поколениеpython
Please open Telegram to view this post
VIEW IN TELEGRAM
15🔥111👀42❤17👍54💘222🗿1
Друзья, подготовили для вас очередной вопрос с собеседований! 😌

Какие функции из модулей collections и itertools вы знаете и используете?

🤍 Ответы на вопрос пишите в комментариях! 😍

Ставьте реакцию:

❤️ — если легко справились с этим вопросом
👀 — если не уверены и почитаете пост с ответом

#поколениеpython #собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👀120❤21843🤯2🔥1
Друзья, ранее мы рассказывали о различных системах счисления, а также о встроенных в Python функциях перевода чисел из одной системы счисления в другую.

🙌 Сегодня поговорим о ручном переводе чисел из различных систем счисления в десятичную.

📌 Любое число в позиционной системе счисления строится из разрядов, вес каждого из которых равен степени основания системы. В десятичной системе, где основание равно 10, разряды называются единицами, десятками, сотнями, тысячами и так далее. Например, число 2548 можно записать в развернутой форме:

2548 = 2 * 10³ + 5 * 10² + 4 * 10¹ + 8 * 10⁰

Видно, что вес каждого разряда отличается от предыдущего ровно в 10 раз. Такой принцип объясняется тем, что счет ведется десятками: десять единиц дают один десяток, десять десятков — одну сотню и так далее. В других позиционных системах счисления счет ведется по аналогичному принципу, но уже не десятками, а значением, равным основанию. Например, в двоичной системе счет ведется двойками, в троичной — тройками, а в пятеричной — пятерками.

⚠️ Понятие развернутой формы числа справедливо не только для десятичной системы счисления, но и для любой другой. Подобно тому, как мы представляем десятичные числа в виде суммы степеней 10, мы можем представить:

🟡 двоичные числа — в виде суммы степеней 2
🟡 троичные числа — в виде суммы степеней 3
🟡 пятеричные числа — в виде суммы степеней 5
🟡 p-ичные числа — в виде суммы степеней p

⭕️ Чтобы перевести число из p-ичной системы счисления в десятичную, необходимо записать это число в развернутой форме, используя десятичную систему счисления, и произвести вычисления. Получившееся значение будет числом в десятичной системе:

🟢 1011₂ = 1 * 2³ + 0 * 2² + 1 * 2¹ + 1 * 2⁰ = 11
🟢 3202₄ = 3 * 4³ + 2 * 4² + 0 * 4¹ + 2 * 4⁰ = 226
🟢 7154₈ = 7 * 8³ + 1 * 8² + 5 * 8¹ + 4 * 8⁰ = 3692
🟢 BEE₁₆ = 11 * 16² + 14 * 16¹ + 14 * 16⁰ = 3054

Ставьте реакцию:

🔥 — если умели переводить числа в десятичную систему
👀 — если узнали об этом способе впервые

#алгоритмы #поколениеpython
Please open Telegram to view this post
VIEW IN TELEGRAM
32🔥143👀3910❤5⚡54👍3🆒22❤‍🔥1
Друзья, отвечаем на вопрос с собеседований! 😎

Наиболее часто используемые функции модулей collections и itertools в Python:

🩵 defaultdict — удобный способ создания словаря с заданным значением по умолчанию для любого ключа, который еще не был добавлен в словарь

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

🩵 namedtuple — можно создать именованный кортеж с заданными полями, что может быть удобно для работы с данными, которые имеют структуру, но не требуют создания класса

🩵 itertools.chain — позволяет конкатенировать несколько итерируемых объектов в единый итератор

🩵 itertools.groupby — позволяет группировать элементы итерируемого объекта по заданному ключу

🩵 itertools.combinations и itertools.permutations — генерируют все различные комбинации или перестановки элементов из заданного множества

🩵 Какими еще функциями стоит дополнить этот перечень? Пишите в комментариях!

Ставьте реакцию:

🔥 — если у вас есть опыт работы программистом
👀 — если только стремитесь к этому

#собеседования #поколениеpython
Please open Telegram to view this post
VIEW IN TELEGRAM
👀118🔥32105❤2✍1👍1🤔1🏆11
Друзья, это пост благодарности нашим студентам, которые делятся с другими своими учебными материалами. 👩‍❤️‍👨

😍 Студентка Ольга подготовила конспекты теории к курсам для начинающих и продвинутых, смотрите в комментариях к посту. ⬇️

😍Пользователь @Q6UET сделал шпаргалку к курсу "Базы данных и SQL" и поделился ей в комментариях на Stepik. Она доступна по ссылке.

😍 Ещё один студент сделал методичку к курсам для начинающих и продвинутых на GitHub.

👩‍❤️‍👨 Благодарим за вашу вовлеченность и щедрость! Надеемся, что эти материалы помогут другим нашим студентам сделать свое обучение более удобным и эффективным.

☝️☝️☝️☝️ Скидывайте ссылки на свои полезные материалы в комментарии к этому посту! Мы добавим их в раздел "Полезные материалы" в конце соответствующего курса.

Ставьте реакцию:

🔥 — если делаете свои записи при прохождении курса
👀 — если вам хватает материалов курса

#поколениеpython #курсы #студенты #методички #шпаргалки
Please open Telegram to view this post
VIEW IN TELEGRAM
51🔥123👀52197👍6❤54❤‍🔥3🤷‍♀1👻1
Друзья, сегодня поговорим об иерархии числовых типов данных. 👍

В Python существует несколько числовых типов данных:

🟡 тип int — целые числа
🟡 тип float — числа с плавающей точкой
🟡 тип complex — комплексные числа
🟡 тип Decimal — числа с плавающей точкой с заданной точностью
🟡 тип Fraction — рациональные числа (обыкновенные дроби)

✏️ В математике числа обладают естественной иерархией. Например, все натуральные числа являются целыми, а все целые числа — рациональными. Похожие рассуждения применимы и к представлению чисел в Python. Здесь числовая иерархия выражается через абстрактные базовые классы, содержащиеся во встроенном модуле numbers.

📎 Корнем числовой иерархии является абстрактный класс Number. Все числовые типы данных являются его наследниками. Абстрактные классы модуля numbers между собой образуют иерархию наследования, которая представлена на картинке.

🔜 Абстрактный класс Number не содержит никаких методов. Все остальные абстрактные классы числовой иерархии содержат методы, определяющие поведение дочерних числовых типов. Например, абстрактный класс Complex включает все поведение, характерное для комплексных чисел.

🔜 Абстрактный класс Real, включающий все поведение, характерное для чисел с плавающей точкой, расширяет поведение родительского класса Complex путем добавления новых методов.

🔜 Тип float включает все поведение, реализованное в абстрактных классах Real и Complex, но не включает поведение, реализованное в абстрактных классах Rational и Integral, поскольку они не являются родительскими классами абстрактного класса Real.

☝️☝️☝️☝️ Тип Decimal не включен в общую числовую иерархию и является наследником только абстрактного класса Number. Это связано с тем, что наследование в числовой иерархии подразумевает поддержку всех общих операций между числовыми типами, которые наследуются от одного абстрактного класса. Однако типы float и Decimal имеют несовместимую реализацию, которая ограничивает взаимодействие чисел этих типов между собой.

Ставьте реакцию:

🔥 — если знали все об иерархии числовых типов данных в Python
👀 — если узнали кое-что новенькое

#поколениеpython #типыданных #полезныйматериал
Please open Telegram to view this post
VIEW IN TELEGRAM
👀116🔥178❤6🆒22👍1👾11
Друзья, хотим обратиться к вам с вопросом. 😏

Мы постоянно думаем над развитием курсов "Поколения", причем не только вглубь, но и вширь. 😁 Нам интересно охватывать новые темы, которые пересекаются с программированием и могут быть полезны нашим студентам.

🇬🇧 Так возникла идея курса "Английский язык Поколения". Он будет посвящен прикладному английскому, который необходим программистам и любым ИТ-специалистам.

👩‍❤️‍👨 Расскажите в комментариях, что вы думаете об этой идее? Был бы такой курс вам полезен?

☝️☝️☝️☝️ Если курс вам интересен, подпишитесь на новости о нем на нашем сайте. Количество подписок помогает нам оценить востребованность идеи и принять решение о запуске разработки. 😉

Ставьте реакцию:

🔥 — если курс вас интересует
❤️ — если в целом интересно, но зависит от деталей
👀 — если вам такой курс не нужен

#поколениеpython #английскийдляит #курсы #опрос
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥385❤119👀748❤‍🔥542
Друзья, разбираем решение графического уравнения. 😵‍💫

Система уравнений — классический метод решения подобных задач. Но в данном случае это слишком громоздкий и долгий способ. Разберем вариант попроще! 🙂

❗️ Можно заметить, что если сложить между собой суммы всех столбцов и вычесть из них две известные строки, то получится искомый результат. Обозначим GitHub = a, Terminal = b, JavaScript = c, Linux Bash = d. Получаем:

(a + c + a + b + d + d + c + b + c) - (c + d + b + a + d + c) = 8 + 23 + 13 - 18 - 12 = 14 = a + b + c


Мы получили ответ на задачу a + b + c = 14, не вычисляя явно значения a, b и с.

Ставьте реакцию:

🔥 — если тоже решили задачу этим способом
❤️ — если использовали метод подбора
👀 — если решали через систему уравнений

#разборзадачи #поколениеpython
Please open Telegram to view this post
VIEW IN TELEGRAM
50❤44👀26🔥165🏆2🗿222❤‍🔥1✍1👌1
Друзья, а вот и новое слово недели! 😍 Сегодня поговорим про дескрипторы.

📌 Дескриптор (лат. "descriptor" — описывающий) — это объект, который описывает другой объект и управляет доступом к нему.

Механизм дескрипторов встречается во многих областях информатики:

🟣операционные системы: файловые дескрипторы — идентификаторы открытых файлов или ресурсов
🟣программирование: дескрипторы объектов управляют доступом к атрибутам
🟣сетевые технологии: сокетные дескрипторы — идентификаторы соединений
🟣базы данных: дескрипторы курсоров или транзакций — объекты управления состоянием операций

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

🖥 В Python дескриптор — это объект, реализующий протокол дескриптора, то есть содержащий хотя бы один из методов __get__(), __set__() или __delete__(). Дескрипторы позволяют контролировать чтение, запись и удаление атрибутов.

С их помощью можно:

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

Ставьте реакцию:

🔥 — если сталкивались с понятием дескриптора
👀 — если узнали о нем впервые

#словонедели #поколениеpython #дескриптор
Please open Telegram to view this post
VIEW IN TELEGRAM
👀102🔥7312❤662👏1
Друзья, сегодня задача, с которой труднее справляться зумерам. 😁

❓ Сколько градусов составляет внутренний угол между часовой и минутной стрелками, когда на часах двадцать минут восьмого?

❗️ Пишите ответы и ход своих мыслей в комментариях, не забывая про скрытый текст.

Ставьте реакции:

🔥 — если легко понимаете время по часам со стрелками
👀 — если у вас слабо развит этот навык

#задача #поколениеpython
Please open Telegram to view this post
VIEW IN TELEGRAM
22🔥204👀33❤9💯6653🤩1
Друзья, если вдруг вы размышляли, какой самый старый высокоуровневый язык программирования используется до сих пор, то знайте: правильный ответ — Fortran. 🦖

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

💡 В 1957 году в лабораториях IBM создают Fortran (сокращение от FORmula TRANslation — "перевод формул"). Это был настоящий прорыв: первый массовый язык высокого уровня, который переводил понятные человеку инструкции в работающий код.

💫 Благодаря Fortran программирование стало доступно не только инженерам, но и ученым. Он оставался самым популярным языком в мире науки вплоть до конца 80-х.

⤵️ Где сегодня применяется Fortran:

❤️метеопрогнозы и климатические модели
❤️аэродинамика
❤️ядерная физика
❤️суперкомпьютеры и HPC (High-Performance Computing)

🔥 В индексе популярности языков TIOBE 2025 он находится на 11 месте. Последнее обновление языка вышло в 2023 году. На практике Fortran часто используют в связке с Python: первый — для начинки, второй — для интерфейса.

Ставьте реакцию:

🔥 — если читали в детстве книгу "Энциклопедия профессора Фортрана"
👀 — если не слышали о такой книге

#япознаюмир #Fortran #поколениеpython
Please open Telegram to view this post
VIEW IN TELEGRAM
30👀247🔥60❤12👍7432😁1🗿1