Разъяснивший Python
8.16K subscribers
2.44K photos
40 videos
30 files
2.29K links
Твой проводник в омут Python'а

Ссылка: @Portal_v_IT

Сотрудничество: @oleginc, @tatiana_inc

Канал на бирже: https://telega.in/c/python_pssss
Download Telegram
itertools.pairwise

itertools.pairwise возвращает пары соседних элементов из итерируемого объекта. Это полезно для сравнения, анализа трендов и работы с графами или координатами.

Разъяснивший Python
Мои коллеги из Яндекса создали сильнейшие IT каналы 🔥

Наше кредо — программирование не сложно, просто никто не объяснял нормально.


🐍 Ghostly Python - Разбираем код, автоматизируем рутину, пишем ботов, скрипты и полезные утилиты. Все что нужно для уверенного старта в программировании на Python.

☕️ Easy Java - вскрываем Java изнутри. Все тонкости этого универсального языка в одном канале, врывайся!

😎 IT Syndicate - гигабайты свежего материала по всем направлениям. GameDev, InfoSec, Frontend - и это лишь малая часть..
Please open Telegram to view this post
VIEW IN TELEGRAM
itertools.batched

itertools.batched разбивает итерируемый объект на фиксированные группы. Это полезно для пакетной обработки данных, группировки и работы с потоками данных.

Разъяснивший Python
👍2
Антипаттерн недели: Использование переменных с плавающим значением в качестве условий

В Python числа с плавающей точкой (float) могут вести себя неожиданно из-за погрешности вычислений. Это особенно критично при сравнении и использовании их в логических выражениях.

Избегайте прямого сравнения float — используйте округление или math.isclose().

Разъяснивший Python
Как удалить дубликаты из списка, сохранив порядок?

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

Этот приём позволяет удалить дубликаты за одну строку: list(dict.fromkeys(list1)) создаёт словарь, где ключами становятся уникальные элементы в порядке их появления.

Итог:
Удаляет дубликаты за одну строку.
Сохраняет порядок элементов.
Работает быстро и эффективно!

Разъяснивший Python
👍1
Как найти самое частое значение в списке?

Иногда нужно определить, какой элемент встречается в списке чаще всего. Новички могут использовать циклы и счётчики, но Python предлагает удобный способ — collections.Counter.

Этот приём позволяет найти самый частый элемент за одну строку: Counter(list1).most_common(1)[0][0] возвращает элемент с максимальной частотой.

Итог:
Определяет самый частый элемент за одну строку.
Работает с числами, строками и любыми данными.
Удобно для анализа данных!

Разъяснивший Python
str.removeprefix

str.removeprefix удаляет указанный префикс из строки, если он присутствует. Это полезно для очистки и нормализации данных без лишних условий и срезов.

Разъяснивший Python
Как проверить, все ли элементы в списке одинаковые?

Иногда нужно убедиться, что все элементы в списке одинаковые. Новички могут использовать циклы, но Python предлагает элегантный способ — set и all().

Этот приём позволяет сделать проверку за одну строку:

len(set(list1)) == 1 — если в множестве только один элемент, значит, все элементы одинаковые.

all(x == list1[0] for x in list1) — проверяет, равны ли все элементы первому.

Итог:
Проверяет список за одну строку.
Подходит для любых типов данных.
Упрощает валидацию данных!

Разъяснивший Python
2
Ускорение компиляции с помощью numba

Если определённая часть твоего кода всё ещё работает медленно, попробуй библиотеку numba, чтобы компилировать код. numba ускоряет выполнение в 10-20 раз, так как компилирует код в машинные инструкции.

Разъяснивший Python
🤯1
SDV - библиотека, разработанная учеными MIT, использующая алгоритмы машинного обучения для генерации различного рода таблиц при помощи анализа реальных данных и создания на их основе синтетических данных в Python.

Либа позволяет создать единичные таблицы, соединенные мульти-таблицы и секвентальные таблицы.

Пример кода:
from sdv.datasets.demo import download_demo

real_data, metadata = download_demo(
modality='single_table',
dataset_name='fake_hotel_guests')


В результате генерирует такую таблицу.

Ставится командой pip install sdv
Документация и примеры кода на Github

Разъяснивший Python
Pandas: Удаление дубликатов

pandas.dropduplicates() — метод в библиотеке pandas, который используется для удаления дубликатов строк из DataFrame. С помощью duplicated ты можешь проверить, имеются ли дубликаты.

Разъяснивший Python
Как объединить строки без цикла?

Когда нужно склеить несколько строк из списка в одну, новички часто используют цикл for и оператор +. Но в Python есть более быстрый и лаконичный способ — метод .join().

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

Итог:
.join() — лучший способ объединения строк.
Работает быстро и читаемо.
Подходит для любых итерируемых объектов со строками.

Разъяснивший Python
dict.setdefault

dict.setdefault возвращает значение по ключу, если он существует, или добавляет ключ со значением по умолчанию. Это полезно для группировки, счётчиков и инициализации вложенных структур.

Разъяснивший Python
Как быстро получить уникальные значения из списка?

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

Множество (set) автоматически удаляет все повторяющиеся значения. А если нужно сохранить порядок, можно дополнительно применить dict.fromkeys(). Всё это делается буквально в одну строку!

Итог:
set() — простой способ убрать дубликаты.
dict.fromkeys() сохраняет порядок элементов.
Отлично подходит для быстрой фильтрации!

Разъяснивший Python
2
enumerate

enumerate добавляет индексы к элементам итерируемого объекта. Это полезно для одновременного доступа к элементу и его позиции в цикле.

Разъяснивший Python
zip

zip объединяет несколько итерируемых объектов в кортежи по элементам. Это полезно для параллельной обработки нескольких списков.

Разъяснивший Python
Как быстро проверить, является ли строка числом?

При обработке пользовательского ввода важно понимать, содержит ли строка число. Новички могут пытаться использовать try-except или проверять вручную, но есть более элегантное решение — метод .isdigit().

Метод .isdigit() возвращает True, если строка состоит только из цифр. Это удобно, когда нужно, например, убедиться, что пользователь ввёл возраст или ID.

Итог
.isdigit() — простой способ проверить, состоит ли строка только из цифр.
Полезен при валидации ввода.
Работает только для положительных целых чисел.

Разъяснивший Python
Ridge и Lasso

Иногда простая линейная регрессия начинает чудить: переобучается, даёт нестабильные коэффициенты, особенно если в данных много признаков или они между собой похожи. Это называется мультиколлинеарность, и лечится оно регуляризацией — техникой, которая добавляет “штраф” за слишком сложную модель. В линейной регрессии это реализуется через Ridge (L2-регуляризация) и Lasso (L1-регуляризация).

Ridge-регрессия добавляет к ошибке сумму квадратов коэффициентов. В результате модель получает штраф за то, что “раздувает” веса. Чем больше alpha, тем сильнее сжимаются веса. Маленькое значение — почти обычная линейная регрессия, большое — всё приближается к нулям.

Lasso-регрессия штрафует за модули коэффициентов. То есть она не просто сжимает веса, а может вообще сделать некоторые из них равными нулю. Это превращает Lasso в инструмент для отбора признаков: она как бы говорит «этот признак не важен — выкину его сам».

Разъяснивший Python
re.sub

re.sub заменяет все вхождения шаблона в строке на указанное значение. Это полезно для очистки и нормализации текста.

Разъяснивший Python
Как удобно отформатировать строку с переменными?

Новички часто используют конкатенацию (+) для вставки переменных в строки. Это может быть неудобно и плохо читаемо. Вместо этого лучше использовать f-строки — современный и лаконичный способ форматирования строк в Python!

F-строки (или форматированные строки) позволяют вставлять переменные прямо внутрь строки с помощью фигурных скобок {}. Это и быстрее, и чище!

Итог:
F-строки — самый читаемый и удобный способ форматирования.
Позволяют вставлять выражения прямо в строку.
Работают с любой версией Python 3.6+.

Разъяснивший Python
👍1