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
types.CodeType.replace

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

#theory // Just Python
Как найти самое длинное слово в списке?

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

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

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

#theory // Just Python
Как удалить все falsy-значения из списка?

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

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

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

#theory // Just Python
Обмен переменными между Jupiter-блокнотами

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

#theory // Just Python
Применение *args в Python

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

#theory // Just Python
Тесты статистической значимости

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

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

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

#theory // Just Python
Что такое JMESpath?

JMESpath – это язык запросов для JSON

Который позволяет получать необходимые данные из документа или словаря JSON. Библиотека доступна как для Python, так и для других ЯП, что расширяет ее возможности.

#theory // Just Python
Пример на Python для автоматического превращения голосовых команд в текстовые напоминания

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

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

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

#theory // Just Python
Метод cached_property в functools

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

#theory // Just Python
Узнай подходящую тебе карьеру за 5 минут.

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

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

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

Реклама. Информация о рекламодателе по ссылкам в посте.
Как заменить все вхождения элемента в списке?

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

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

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

#theory // Just Python
total_ordering и его применение

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

#theory // Just Python
time.thread_time()

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

#theory // Just Python
Рисование без рук — управляй курсором глазами!

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

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

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

#theory // Just Python
Полезные методы словаря

Существуют множество полезных методов словаря. Например, метод 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