кода для Python. Кроме стандартного синтаксиса Python, поддерживаются: • прямой вызов функций и методов C/C++ из кода на Cython; • строгая типизация переменных, классов, атрибутов классов. Код Cython преобразуется в C/C++ код для последующей компиляции и впоследствии может использоваться как расширение стандартного Python или как независимое приложение со встроенной библиотекой выполнения Cython.”
собрать из него бинари и поставлять их вместо скриптов. Как именно работает трансляция? Cython гененирует код на C/C++ на основе кода на Python используя его C- API
библиотеку на нативном языке в Python. Для этого нужны: • Заголовочный файл .h • Библиотека .so | .a • Или исходники библиотеки на C/C++ • Обертка на Cython
• Nuitka – Nuitka is a source-to-source compiler which compiles Python code to C source code • CFFI – C Foreign Function Interface for Python • Numba – Numba is an open-source JIT compiler that translates a subset of Python and NumPy into fast machine code using LLVM
с функцией расшифровки данных Вставляем в нужные Python файлы следующий кусок на Cython cdef extern from "sentinel.h": vector[unsigned char] sentinel_decrypt(const string& path) except +
os.PathLike], mode: str, **kwargs) Создаем класс для чтения данных с расшифровкой на замену io.FileIO class SentinelFileIo Переименовываем .py → .pyx Полный исходник можно посмотреть в статье на Хабр