Python 编程基础与性能优化
1. 数组视图与性能优化选项
1.1 数组视图的连续性
在创建数组视图时,结果不一定是连续的。例如:
In [235]: arr_c[:50].flags.contiguous
Out[235]: True
In [236]: arr_c[:, :50].flags
Out[236]:
C_CONTIGUOUS : False
F_CONTIGUOUS : False
OWNDATA : False
WRITEABLE : True
ALIGNED : True
UPDATEIFCOPY : False
1.2 性能优化选项
为了实现高性能的代码,有多种选择:
- Cython :Cython 项目(http://cython.org)是许多科学 Python 程序员实现快速代码的首选工具。它允许在 Python 代码中使用静态类型,并能嵌入 C 函数。例如,一个简单的 Cython 函数用于计算一维数组元素的和:
from numpy cimport ndarray, float64_t
def sum_elements(ndarray[float64_t] arr):
cdef Py_ssize_t i, n = len(arr)
cdef float64_t result = 0
for i in range(n):
result += a
超级会员免费看
订阅专栏 解锁全文
3425

被折叠的 条评论
为什么被折叠?



