Cython的安装
来源:互联网 发布:mac系统重装的网络加速 编辑:程序博客网 时间:2024/06/05 07:38
Windows下安装
先从http://cython.org下载软件包:Cython-0.19.2.zip
解压到一个目录,如D:\Cython-0.19.2
从开始菜单里打开Visual Studio Command Prompt,例如:MicroSoft Visual Studio 2010-> Visual Studio Tools -> Visual Studio Command Prompt(2010)
敲入如下命令:
D:
cd Cython-0.19.2
python setup.py install
命令执行完后就会把cython安装到python的安装目录下
2.2 Ubuntu下安装
apt-get install cython
3 第一个例子:
3.1 创建helloworld目录
创建helloworld.pyx,内容如下:
cdef extern from"stdio.h":
extern int printf(const char *format, ...)
def SayHello():
printf("hello,world\n")
代码非常简单,就是调用了C函数printf打印hello,world
4 如何编译
4.1 最方便的当然是利用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
4.2 其次就是可以自己写Makefile进行编译
写Makefile的好处就是可以知道编译的实质:
下面是用于Windows下编译的Makefile,Makefile内容如下:
ALL :helloworld.pyd
helloworld.c : helloworld.pyx
cython -o helloworld.c helloworld.pyx
helloworld.obj :helloworld.c
cl -c -Id:\python27\include helloworld.c
helloworld.pyd :helloworld.obj
link /DLL /LIBPATH:d:\python27\libshelloworld.obj /OUT:helloworld.pyd
执行命令:
set PATH=D:\Python27\Scripts;%PATH%
nmake
进行编译,会在根目录下生成helloworld.pyd
linux下的Makefile和Windows下的类似,只是编译器不同而己,另外,生成的文件名为:helloworld.so,而不是helloworld.pyd
测试:
>>>import helloworld
>>>helloworld.SayHello()
hello,world
- Cython的安装
- 【Cython】Cython在Windows环境下的部署安装
- Cython安装
- Cython基础--Cython的类型
- Cython基础--Cython的函数
- Cython基础--Cython的类
- cython安装、使用
- cython安装、使用
- 安装Cython及测试
- Windows Cython 安装
- Python的Cython在Windows环境下的部署安装
- Cython的安装以及编译错误的解决方案
- Python的Cython在Windows环境下的部署安装
- Cython基础--Cython的语句和表达式
- Cython的学习方法
- Cython的学习方法
- Cython的基础语法
- Cython 的学习
- 大白话讲解Promise(一)
- js实现滑动门效果
- VisualStudio2015密钥
- [python3教程]第十二章.虚拟环境和程序集(VIRVUAL ENVIRONMENTS AND PACKAGES)
- Codeforecs 785C Anton and Fairy Tale 数学+二分
- Cython的安装
- 排序练习题
- 递归实现辗转相除以及筛法查找第n个素数
- 给网页添加图标
- 雅思考试是申请美国本科条件的试金石
- 文章标题
- DB2进行压缩的最佳实践
- vue学习笔记
- Node.js+Express构建Http服务(GET方式和POST方式)