Just Python
11.2K subscribers
3.66K photos
11 videos
3.66K links
🐍Простое изучение Python.

Ссылка: @Portal_v_IT

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

Канал на бирже: telega.in/c/justpython_it

РКН: clck.ru/3MnbSc
Download Telegram
Полезные методы словаря

Существуют множество полезных методов словаря. Например, метод keys() возвращает все ключи словаря. values() возвращает все значения. items() возвращает пары ключ-значение, а update() обновляет словарь, добавляя или заменяя пары ключ-значение.

#theory // Just Python
Получение наибольших или наименьших чисел из списка

Представим, что у вас есть список с числами и необходимо получить указанное число наибольших или наименьших чисел из него.
Одно из решений данной задачи - использование встроенной библиотеки heapq.

#theory // Just Python
Как найти разницу между двумя списками?

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

Этот приём позволяет найти разницу за одну строку: set(list1) - set(list2) возвращает элементы, которые есть в list1, но отсутствуют в list2.

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

#theory // Just Python
Функция filterfalse()

Функция filterfalse() модуля itertools создает итератор, который удаляет элементы из последовательности iterable до тех пор, пока функция predicate равна False или 0. Возвращается итератор с отобранными элементами.

Если predicate=None, функция вернет элементы, которые являются ложными.

Аргумент predicate это функция, принимающая один элемент последовательности и возвращающая bool значение.

#theory // Just Python
itertools.pairwise

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

#theory // Just Python
Мои коллеги из Яндекса создали сильнейшие IT каналы 🔥

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


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

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

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

При использовании класс deque из модуля collections мы работаем с очередью. Он позволяет добавлять и удалять элементы с обоих концов очереди.

В этом примере мы создаем объект deque, содержащий список фруктов. Затем мы добавляем элемент 'pear' в конец очереди с помощью метода append() и элемент 'grape' в начало очереди с помощью метода appendleft(). Конечный результат - очередь, содержащая фрукты в порядке 'grape', 'apple', 'banana', 'orange', 'pear'.

#theory // Just Python
itertools.batched

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

#theory // Just Python
Антипаттерн недели: Использование переменных с плавающим значением в качестве условий

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

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

#theory // Just Python
Генераторные выражения в Python

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

#theory // Just Python
str.removeprefix

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

#theory // Just Python
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

#theory // Just Python
Пример кода с использованием glob

Модуль glob находит все пути, совпадающие с заданным шаблоном в соответствии с правилами, используемыми оболочкой Unix. Обрабатываются символы "*" (произвольное количество символов), "?" (один символ), и диапазоны символов с помощью []. Для использования тильды "~" и переменных окружения необходимо использовать os.path.expanduser() и os.path.expandvars().

#theory // Just Python
Ускорение компиляции с помощью numba

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

#theory // Just Python
Pandas: Удаление дубликатов

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

#theory // Just Python
dict.setdefault

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

#theory // Just Python
Как объединить строки без цикла?

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

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

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

#theory // Just Python
enumerate и как он работает

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

#theory // Just Python
Как быстро получить уникальные значения из списка?

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

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

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

#theory // Just Python
MQL — переводит запрос, описанный обычными словами в код на SQL при помощи нейросетей.

То есть пишешь ему, например:
все книги которые взяли студенты 2 курса за последнюю неделю

И он вам выдаёт SELECT * FROM ... и тд.

#theory // Just Python