码迷,mamicode.com
首页 > 编程语言 > 详细

Python和C|C++的混编(二):利用Cython进行混编

时间:2014-11-14 22:52:15      阅读:384      评论:0      收藏:0      [点我收藏+]

标签:style   io   color   ar   使用   sp   for   strong   on   

还可以使用Cython来实现混编

1 下载Cython,用python setup.py install进行安装

2 一个实例

① 创建helloworld目录

创建helloworld.pyx,内容如下:

cdef extern from"stdio.h":

    extern int printf(const char *format, ...)

def SayHello():

printf("hello,world\n")

编译,最方便的是利用python的Distutils了,

helloworld目录下创建Setup.py,内容如下:

from distutils.core import setup

from distutils.extension import Extension

from Cython.Build import cythonize

 

setup(

  name = helloworld,

  ext_modules=cythonize([

    Extension("helloworld", ["helloworld.pyx"]),

    ]),

)

 

编译:

python Setup.py build

安装:

python Setup.py install

安装后,会将在build/lib.???目录下生成的helloworld.pyd拷贝到Lib/site-packages

注:

  有时我们只是希望测试一下,并不希望安装,这时可以把build/lib.???目录下的helloworld.pyd拷贝到当前目录

  或者在importhelloworld前执行脚本:import sys;sys.path.append(pathof helloworld.pyd)

 

③ 测试:

>>>import helloworld

>>>helloworld.SayHello()

hello,world

Python和C|C++的混编(二):利用Cython进行混编

标签:style   io   color   ar   使用   sp   for   strong   on   

原文地址:http://blog.csdn.net/lanbing510/article/details/41125095

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!