如何在python中使用cython编译器

时间:2017-07-26 17:11:33

标签: python cython

在此链接中:http://earthpy.org/speed.html我找到了以下内容

%%cython
import numpy as np

def useless_cython(year):

    # define types of variables
    cdef int i, j, n
    cdef double a_cum

    from netCDF4 import Dataset
    f = Dataset('air.sig995.'+year+'.nc')
    a = f.variables['air'][:]

    a_cum = 0.
    for i in range(a.shape[0]):
        for j in range(a.shape[1]):
            for n in range(a.shape[2]):
                #here we have to convert numpy value to simple float
                a_cum = a_cum+float(a[i,j,n])

    # since a_cum is not numpy variable anymore,
    # we introduce new variable d in order to save
    # data to the file easily
    d = np.array(a_cum)
    d.tofile(year+'.bin')
    print(year)
    return d

在函数上编写%% cython似乎很容易。然而,这对我不起作用 - > "陈述似乎没有效果"我的IDE说。 经过一番研究后,我发现%%语法来自iphyton,我也安装了它(以及cython)。还是不行。我使用python3.6 有什么想法吗?

1 个答案:

答案 0 :(得分:0)

一旦进入IPython解释器,您必须在使用之前加载扩展。可以使用语句Function1<G, X>完成,因此在您的情况下:

G

如果您还没有看到这两个工具,请在cython sideIPython side上查看文档的相关部分。