Разъяснивший 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
Как заменить все вхождения элемента в списке?

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

Этот приём позволяет заменить элемент за одну строку: [new_value if x == old_value else x for x in list1] проходит по списку и меняет нужные элементы.

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

Разъяснивший Python
Узнай подходящую тебе карьеру за 5 минут.

Онлайн-школа участник проекта "Сколково" создала уникальный инструмент профориентации, который раскроет ваш потенциал. Простой тест с вариантами ответа, менее чем из 20 вопросов.

В конечный результат вошли только самые востребованные профессии для 2025 года, большинство специальностей из сферы IT и Дизайна, именно в них на сегодня наибольшие доходы.

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

Реклама. Информация о рекламодателе по ссылкам в посте.
👍1
functools.total_ordering

functools.total_ordering автоматически добавляет недостающие методы сравнения, если определить хотя бы __eq__ и один из <, <=, >, >=. Это полезно для упрощения классов с порядком.

Разъяснивший Python
👍1
Пример на Python для автоматического превращения голосовых команд в текстовые напоминания

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

Замените your_email@example.com и your_password на свои учетные данные. Для отправки писем через Gmail может потребоваться разрешить доступ для менее безопасных приложений.

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

Разъяснивший Python
😁1
time.thread_time()

time.thread_time() возвращает процессорное время текущего потока. Это полезно для точного измерения производительности одного потока, исключая время ожидания или сна.

Разъяснивший Python
Полезные методы словаря

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

Разъяснивший Python
Рисование без рук — управляй курсором глазами!

Этот лайфхак позволит двигать курсором мыши, управляя глазами через веб-камеру! Теперь можно рисовать, кликать и работать на компьютере без рук.

Как это работает?
1. MediaPipe FaceMesh отслеживает положение глаз.
2. Пересчитывает координаты в масштаб экрана.
3. Перемещает курсор в точку, куда смотрите.

Что можно делать?
1. Рисовать в Paint глазами (просто добавьте pyautogui.click()).
2. Играть без рук (управлять мышкой во время игры).
3. Помочь людям с ограниченными возможностями (альтернатива трекпаду).

Разъяснивший Python
Как найти разницу между двумя списками?

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

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

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

Разъяснивший Python
👍2👎1
Получение наибольших или наименьших чисел из списка

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

Разъяснивший Python
👍2
Получаем данные о стране с помощью Python — быстро, просто и в стиле Data Science.

Установка:
pip install countryinfo


Пример работы:
from countryinfo import CountryInfo
from typing import List, Union

def get_country_info(country_name: str) -> None:
country = CountryInfo(country_name)

area: Union[int, None] = country.area()
population: Union[int, None] = country.population()
provinces: Union[List[str], None] = country.provinces()
capital: Union[str, None] = country.capital()

print(f"📍 Страна: {country_name}")
print(f"📐 Площадь: {area:,} км²")
print(f"👥 Население: {population:,} человек")
print(f"🏙 Столица: {capital}")
print(f"📌 Регионы: {', '.join(provinces[:5])} ... (и другие)")

if __name__ == "__main__":
get_country_info("Russia")


Работает для большинства стран;
Возвращает столицы, регионы, валюту, соседей и даже границы;

Разъяснивший Python
👍1
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