Python Education
Yopiq kanal
Обучаем Python как маленьких, так и взрослых Ссылка: @Portal_v_IT Сотрудничество: @oleginc, @tatiana_inc Канал на бирже: telega.in/c/python_educa РКН: clck.ru/3MnbNV
Ko'proq ko'rsatish8 742
Obunachilar
-324 soatlar
-307 kunlar
-8030 kunlar
Postlar arxiv
8 741
Транспонирование 2d-массива
Этот лайфхак покажет, как выполнить транспонирование 2d-массива с помощью метода zip. Посмотрите пример кода ниже.
8 741
Как эффективно по отношению к памяти сравнить два неупорядоченных списка
Давайте предположим, что у вас есть два списка, которые содержат одинаковые элементы. Однако эти элементы стоят в разном порядке.
Два списка содержат одни и те же элементы, а вот их порядок отличается. Давайте посмотрим, как мы можем удостовериться, что перед нами два одинаковых списка.
• Мы можем использовать метод collections.Counter
• Можно использовать sorted(), если объекты поддаются порядку.
8 741
Вычисляем размер объектов в памяти
Чтобы вычислить размер какого-либо объекта, можно воспользоваться функцией sys.getsizeof(object[, default]). Поскольку Python написан в полном соответствии с парадигмой ООП, таким объектом может быть все что угодно.
Однако, следует помнить, что хотя все built-in (встроенные) объекты и вернут правильный размер, в общем случае это не должно быть верно для каких-либо пользовательских объектов.
Аргумент default позволяет определить значение, которое будет возвращено, если тип объекта не предоставляет средства для извлечения размера и вызовет TypeError .
Функция getsizeof вызывает метод sizeof объекта и добавляет дополнительные служебные данные сборщика мусора, если конечно объект управляется сборщиком мусора.
8 741
math.isclose
Метод math.isclose() проверяет, близки ли два значения друг к другу или нет. Возвращает True, если значения близки, иначе False. Близость двух значений определяется в соответствии с заданными абсолютными и относительными допусками. Относительная допуск — это максимально допустимая разница между двумя числами. Значение по умолчанию: 1e-09. Абсолютный допуск используется для сравнения значений, близких к 0. Значение должно быть не менее 0.
8 741
math.gcd
Метод math.gcd() возвращает наибольший общий делитель двух целых чисел. НОД — наибольший общий делитель, на который числа делятся без остатка. Когда оба числа равны 0, функция возвращает 0. Если любое число является символом, возникает TypeError.
8 741
setdefault
Метод setdefault() возвращает значение элемента с указанным ключом. Если ключ не существует, вставляет ключ с указанным значением. Если ключ отсутствует в словаре и значение не указано, возвращается None.
8 741
Функция contextmanager()
Функция contextmanager() модуля contextlib представляет собой декоратор, который можно использовать для определения фабричной функции для оператора контекстных менеджеров with без необходимости создавать класс или отдельные методы enter() и exit().
Хотя многие объекты изначально поддерживают использование в операторах with, иногда необходимо управлять ресурсом, который сам по себе не является диспетчером контекста и не реализует метод close() для использования с функцией contextlib.closing().
8 741
Get Method для словаря
Большинство разработчиков используют скобки, чтобы получить значение из словаря. Но сейчас рекомендуется использовать Get method.
При использовании метода скобок выдается ошибка, если ключ отсутствует. С помощью Get method вы получите “None” .
8 741
Удаление специальных символов при помощи join() и filter()
Давайте воспользуемся методом соединения join(). Откройте ваш файл и инициализируйте строку с обычными и специальными символами. Первоначальная строка будет выводиться на экран первой.
Далее мы используем метод join() с функцией filter() для строковой переменной v1, чтобы отфильтровать символы. В данном случае для сбора только обычных символов из переменной v1 используется метод isalnum().
8 741
Метод islower
Метод str.islower() возвращает True, если все символы в строке имеют нижний регистр (строчные), при этом строка не должна быть пустой, то есть должна иметь хотя бы один символ в нижнем регистре и не состоять из одних пробелов.
Метод str.islower() во всех других случаях возвращает False.
Строка состоящая из символов не имеющих возможности приведение к нижнему регистру также будет возвращать False.
Для приведения символов строки к верхнему регистру используйте метод str.lower().
8 741
Как не просто выучить Python, а разобраться в алгоритмах и структурах данных, автоматических тестах, освоить Django и всё необходимое для качественной разработки в команде?
Например, освоить профессию на Хекслете 📚🐍
Курс невозможно просто «отсидеть» или «прослушать», на нём дают только самое необходимое для условий реального продакшена — доступ к Open Source проектам, базе тестовых задач для подготовки к собеседованиям, кейсы для портфолио.
Так что многие студенты получают оффер ещё во время обучения. Работодатели указывают курсы Хекслета как преимущество при найме.
Узнайте подробнее о профессии «Python-разработчик» и оцените формат школы уже сейчас!
8 741
Форматирование строки
Самые важные части кода — это входные данные, логика и выходные данные. Все три части требуют некоторого форматирования при написании кода для получения лучших и более удобных для восприятия человеком выходных данных. В Python имеется целый ряд методов форматирования строки.
8 741
Генераторы могут помочь при создании итераторов
Если создание собственного класса-итератора — редкость, то создание собственного итерабельного класса — не такая уж редкость. Итерабельный класс требует наличия метода iter, который возвращает итератор. Поскольку генераторы — это простой способ создания итератора, мы можем использовать функцию-генератор или выражение-генератор для создания наших методов iter.
8 741
Очищаем строки
В данном примере мы видим, как при помощи словаря со значениями для замены символов и метода translate, символы:
• переноса строки n
• табуляции t
• перехода на один символ назад b
заменяются на обычные пробелы.
8 741
Процесс делегирования в Python
Делегирование – это объектно-ориентированный подход, также называемый паттерном проектирования.
Предположим, у вас есть объект x, и вы хотите изменить поведение только одного из его методов. Вы можете создать новый класс, предоставляющий новую реализацию метода, который вы хотите изменить, и делегирующий все остальные методы соответствующим методам объекта x.
В примере показан класс, охватывающий поведение файла и преобразующий данные из нижнего в верхний регистр
Метод write() в классе upcase конвертирует строку из нижнего в верхний регистр до вызова другого метода. Собственно сама делегация осуществляется за счет использования объекта self. out.
8 741
Примитивный метод удаления символа из строки
Суть этого метода проста. Мы пишем цикл и создаем новую пустую строку. Цикл работает так: все символы кроме элемента с индексом n помещаются в новую строку. (n — индекс элемента, который нам нужно удалить)
8 741
Изменение класса после создания
Вы можете добавлять, изменять и удалять свойства и методы класса после его создания, даже после того, как будут созданы экземпляры этого класса. Для этого достаточно использовать запись Class.attribute. Изменения применятся ко всем экземплярам класса, вне зависимости от того, когда они были созданы.
Фантастика. Но не увлекайтесь изменением существующих методов, это дурной тон. Кроме того, это может нарушить работу методов, использующих изменяемый класс. С другой стороны, добавление методов менее опасно.
8 741
Станьте Python-разработчиком на Хекслете
✔ Пройдите бесплатные вводные курсы, чтобы познакомиться с профессией.
✔ Если понравится — присоединяйтесь к обучению в группе с наставником
✔ Развивайте нетворкинг в 26-тысячном сообществе айтишников
✔ Выполняйте проекты, участвуйте в Open Source, готовьтесь к трудоустройству
P.S. Вводные курсы профессии доступны бесплатно сразу после регистрации. Оцените формат и решите, стоит ли продолжать!
8 741
Метод rindex
Метод занимается поиском подстроки в строке. Возвращает номер последнего вхождения или вызывает ValueError.
Метод возвращает наибольший индекс совпадения символа/подстроки.
8 741
Метод repr() позволяет определять строковое представление, предназначенное для программиста и удобное при использовании во время отладки, а метод str() позволяет определять понятное пользователю строковое представление, которое можно отображать в интерфейсе программы.
Endi mavjud! Telegram Tadqiqoti 2025 — yilning asosiy insaytlari 
