好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

利用ctypes提高Python的执行速度方法介绍

这篇文章给大家介绍了如何利用ctypes提高Python的执行速度,对大家学习使用python具有一定的参考借鉴价值。有需要的朋友们一起来看看吧。

至于结构体,需要定义一个类,包含相应的字段和类型

class Point(ctypes.Structure):
_fields_ = [('x', ctypes.c_double),
('y', ctypes.c_double)]

除了导入我们自己写的C语言扩展文件,我们还可以直接导入系统提供的库文件,比如linux下c标准库的实现 glibc

import time
import random
from ctypes import cdll
libc = cdll.LoadLibrary('libc.so.6') # Linux系统
# libc = cdll.msvcrt # Windows系统
init = time.clock()
randoms = [random.randrange(1, 100) for x in xrange(1000000)]
print "Python version: %s seconds" % (time.clock() - init)
init = time.clock()
randoms = [(libc.rand() % 100) for x in xrange(1000000)]
print "C version : %s seconds" % (time.clock() - init)

输出

Python version: 0.850172 seconds
C version : 0.27645 seconds

总结

以上就是这篇文章的全部内容,希望对大家学习或使用Python能有一定的帮助,如果有疑问大家可以留言交流。

以上就是利用ctypes提高Python的执行速度方法介绍的详细内容,更多请关注Gxl网其它相关文章!

查看更多关于利用ctypes提高Python的执行速度方法介绍的详细内容...

  阅读:45次