02.23Бинарные модули с помощью Cython
Пример трансляции Hello world в C код.
hello.py:
#coding:utf-8 print "Hello world"
cython hello.py
После выполнения данной команды получаем hello.c весом в целых 40кб.
Но пока это всего лишь C код, а не бинарный модуль.
Для того чтобы получить бинарный модуль нам поможет стандартный сборщик пакетов distutils.
from distutils.core import setup from distutils.extension import Extension from Cython.Distutils import build_ext ext_modules = [Extension("hello", ["hello.py"])] setup( name = 'Hello world app', cmdclass = {'build_ext': build_ext}, ext_modules = ext_modules )
python setup.py build_ext --inplace
Теперь это модуль можно импортировать как и обычные python файлы.
Данный модуль будет работать только под платформами, на которых он был собран.
Подробнее описано тут.
-
http://jezuz-chrizt.livejournal.com Крайст
-
http://klipner.ru rushter
-
http://jezuz-chrizt.livejournal.com Крайст
-
http://klipner.ru rushter