IT-школа Skillfactory
14.6K subscribers
3.65K photos
59 videos
10 files
1.36K links
Канал онлайн-школы цифровых профессий.

Рассказываем, как выбрать IT-направление и начать карьеру. Делимся советами экспертов и историями студентов.

Курсы по Data Science: go.skillfactory.ru/ZTSRlg

Включен в перечень РКН: clck.ru/3FnDun
Download Telegram
Python — удобный и универсальный язык, но его скорость иногда оставляет желать лучшего. Если ваш код тормозит, а переписывать его на C++ не хочется, есть способ ускориться.

Numba — это JIT-компилятор, который быстро превращает Python-код в машинные инструкции. Особенно хорошо работает с числовыми вычислениями и массивами NumPy. Главное — вам почти не придется менять код. Просто добавьте декоратор @jit, и функция начнет работать быстрее.

Как это выглядит

from numba import jit

@jit
def my_function(x):
return x * 2

При первом запуске Numba компилирует функцию, а затем использует кэш, что значительно ускоряет выполнение.

Он поддерживает:
— NumPy-массивы, которых нет в стандартной библиотеке Python.
— Кортежи с элементами разных типов.
— Типизированные словари numba.typed с ключами и значениями одного типа.
— Строки (str) и байты (bytes) для работы с текстовыми данными.
— Списки Python с элементами одного типа.

А еще Numba умеет векторизировать вычисления — выполнять операции сразу над блоками данных, избавляя от лишних циклов. В статье разбираемся, как это работает и какие еще есть способы разгона кода: https://go.skillfactory.ru/AJCqpg

#python @skillfactory
👍6👾2