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
РСА (Метод главных компонент)

PCA (Principal Component Analysis) используется для уменьшения размерности данных без потери ключевой информации. Это полезно для визуализации многомерных данных или ускорения работы моделей. PCA полезен, если признаки сильно коррелируют. Он сохраняет максимум дисперсии данных.

#theory // Just Python
Всего за 5 минут определите подходящую вам IT-профессию.

Онлайн-школа Skillfactory разработала уникальный профориентационный тест из 18 вопросов. Ответив на них, узнаете наиболее подходящую вам специальность.

Работайте в российских или зарубежных компаниях, в офисе или удаленно. Для айтишников — сниженная ставка по ипотеке, высокая зарплата, комфортные условия и гибкий график.

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

Реклама. Информация о рекламодателе по ссылкам в посте.
list.remove

list.remove() — это метод, который позволяет удалить первое вхождение элемента из списка по его значению. Если указанного значения нет в списке, будет вызвано исключение ValueError. Если в списке несколько одинаковых элементов, метод remove() удалит только первое вхождение.

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

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

Этот приём позволяет отсортировать список буквально в одну строку: sorted(list1, key=len) сортирует строки по их длине в порядке возрастания.

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

#theory // Just Python
Автоматическое рисование ASCII-арт из изображения

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

Как это работает:
1. Масштабирование изображения: Изображение уменьшается до заданной ширины, чтобы упростить обработку.
2. Градации серого: Цветные пиксели преобразуются в оттенки серого.
3. Преобразование в символы: Каждый пиксель заменяется ASCII-символом в зависимости от его яркости.
4. Генерация текста: ASCII-символы собираются в строки, формируя текстовое изображение.

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

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

Этот приём позволяет создать словарь буквально в одну строку: {i: v for i, v in enumerate(list1)} создаёт пары индекс-значение.

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

#theory // Just Python
Как ускорить код с NumPy?

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

Обрати внимание на пример. Без использования библиотеку циклу нужно 0.3 секунды для выполнения, а с помощью векторизации мы выполнили операцию за 0.005 секунд! Все дело в том, что NumPy выполняет вычисления на уровне C через оптимизированные библиотеки (например, BLAS или LAPACK).

#theory // Just Python
Антипаттерн недели: Ошибочное использование is для сравнения строк и чисел

В Python оператор is проверяет, являются ли две переменные одним и тем же объектом в памяти, а не просто равны ли их значения. Использование is вместо == для сравнения строк и чисел может привести к непредсказуемым результатам.

Используйте == для корректного сравнения значений.

#theory // Just Python
posix_spawn

posix_spawn() предоставляет высокопроизводительный способ создания новых процессов в Unix-подобных системах, являясь более эффективной альтернативой subprocess.Popen().

#theory // Just Python
sys.set_int_max_str_digits()

sys.set_int_max_str_digits() ограничивает количество цифр при преобразовании очень длинных строк в int. Это полезно для защиты от атак типа "Denial of Service" через огромные числа.

#theory // Just Python
sys.getandroidapilevel()

sys.getandroidapilevel() возвращает API-уровень Android, на котором запущен Python-процесс. Это эксклюзивная функция для Android-платформ, полезная для адаптации поведения скрипта под версию ОС.

#theory // Just Python
types.SimpleNamespace

types.SimpleNamespace — это удобный способ создать объект с доступом к атрибутам через точку без явного определения класса. Полезно для временных структур данных и подмены dict в более читаемой форме.

#theory // Just Python
contextlib.aclosing

contextlib.aclosing() — это контекстный менеджер для асинхронных объектов, у которых есть метод aclose(). Полезен при работе с асинхронными ресурсами, например, сетевыми соединениями или файлами.

#theory // Just Python
sys.set_coroutine_origin_tracking_depth()

sys.set_coroutine_origin_tracking_depth() включает отслеживание цепочек await, что помогает отлаживать асинхронный код. Это полезно при поиске причин неожиданных исключений в сложных async/await вызовах.

#theory // Just Python
🎥 Первый в мире полнометражный фильм, полностью созданный ИИ
по поэме Виктора Слипенчука — “Чингис-Хан”
🔗 Смотреть трейлер

🧠 Проект реализован в новом продюсерском центре ZEPHYR NEYRO — запуском занимается Кирилл Калашников, первый продюсер Литл Биг, ВладА4, Джарахова, Ивана Гая, Марьяны Ро и других топовых блогеров.

За 2 месяца команда из:

10 промпт-инженеров
2 ЛОР-специалистов
1 режиссёра
1 монтажёра
и стека из 5 нейросетей — собрала 1 час 1 минуту полноценного кино.


📅 Через 3 дня — релиз первой части.
Подписывайся, чтобы быть в числе первых, кто увидит, как ИИ ломает старую систему:
👉 Зефир Нейро
sys.getfilesystemencodeerrors()

sys.getfilesystemencodeerrors() возвращает стратегию обработки ошибок, используемую при кодировании/декодировании имён файлов в байты и обратно. Это полезно для совместимости с нестандартными или повреждёнными именами файлов.

#theory // Just Python
sys.get_asyncgen_hooks()

sys.get_asyncgen_hooks() возвращает текущие функции-хуки, которые вызываются при создании и финализации асинхронных генераторов. Это полезно для отслеживания или изменения поведения async def-генераторов в глубоко асинхронных приложениях.

#theory // Just Python
sys.getprofile()

sys.getprofile() возвращает текущую функцию-профайлер, установленную через sys.setprofile(). Это полезно для отладки, написания инструментов анализа выполнения и динамического переключения профилирования.

#theory // Just Python
types.DynamicClassAttribute

types.DynamicClassAttribute позволяет переопределять доступ к атрибутам на уровне класса, а не экземпляра. Это полезно, если поведение свойства должно отличаться при обращении через экземпляр и через сам класс.

#theory // Just Python
sys.getwindowsversion()

sys.getwindowsversion() возвращает подробную информацию о версии Windows, на которой запущен интерпретатор. Это полезно для адаптации поведения скриптов под особенности конкретной ОС — например, различия в путях, шрифтах, файловых системах.

#theory // Just Python