Разъяснивший 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
Использование most_common

Метод most_common выводит список кортежей вида (элемент, число повторений). Аргумент соответствует желаемому числу кортежей. По умолчанию выводится список кортежей для всех элементов переданного списка.

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

Если у вас есть список слов, и нужно найти самое длинное, новички могут использовать циклы и условия. Но Python позволяет сделать это проще — с функцией max() и параметром key=len.

Этот приём позволяет найти самое длинное слово за одну строку: max(words, key=len) выбирает слово с наибольшей длиной.

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

Разъяснивший Python
Как удалить все falsy-значения из списка?

В списке могут быть нежелательные элементы, такие как None, пустые строки, 0 или False. Новички могут использовать циклы и условия, но Python предлагает элегантное решение — функцию filter().

Этот приём позволяет удалить falsy-значения за одну строку: list(filter(None, list1)) автоматически убирает None, 0, False и пустые строки.

Итог
Очистка списка за одну строку.
Удаляет None, 0, False, пустые строки и списки.
Удобно для предобработки данных!

Разъяснивший Python
types.CodeType.replace

types.CodeType.replace() (Python 3.8+) позволяет создавать изменённые копии объектов байткода (code object). Это мощный инструмент для метапрограммирования, трансформации функций и написания декораторов низкого уровня.

Разъяснивший Python
Как ускорить код с NumPy? Часть 3

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

Обрати внимание на пример. Второй способ работает быстрее, так как память выделяется сразу, а не по мере добавления элементов.

Разъяснивший Python
Тесты статистической значимости

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

Существуют различные виды тестов. t-тест сравнивает средние двух групп. ANOVA сравнивает средние более чем двух групп. Хи-квадрат тест проверяет связь между категориальными переменными. U-тест Манна-Уитни проверяет, отличаются ли распределения двух групп (непараметрический аналог t-теста).

В данном примере продемонстрирован t-тест. Если p-значение <0.05, то различия значимы, гипотеза отвергается. Если p-значение >= 0.05, азличия могут быть случайными, гипотеза принимается.

Разъяснивший Python
👍1
Обмен переменными между Jupiter-блокнотами

Эта команда позволяет вам хранить любую переменную и использовать ее в различных блокнотах Jupyter.
Чтобы извлечь переменную, вам нужно ввести ту же команду с параметром ‘-r’.

Разъяснивший Python
👍1
Применение *args в Python

В Python форма *args с одной звездочкой используется в качестве параметра для отправки функциями списка аргументов, которые не являются ключевыми словами с переменной длиной. Стоит отметить, что звездочка (*) является важным элементом, так как args представляет собой общепринятую идиому, хотя она и не принуждается к использованию языком.

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

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

Этот приём позволяет объединить элементы за одну строку: ", ".join(list1) соединяет элементы списка через заданный разделитель.

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

Разъяснивший Python
functools.cached_property

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

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

Иногда нужно заменить все вхождения одного элемента на другой. Новички могут использовать циклы, но 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