English 中文(简体)
Cython: Unable to cimport from `pxd' file
原标题:Cython: Unable to cimport from `.pxd` file

我有一个简单的项目目录和一些简单的档案,无法汇编。

名录结构:

cythonize: ROOT
|___ cythonize
    |___ __init__.pxd
    |___ __init__.py
    |___ first.pxd
    |___ first.pyx
    |___ second.pxd
    |___ second.pyx
|___ README.md
|___ setup.py

让我表明每个档案中的确切内容。

_init__.pxd:

<EMPTY FILE>

_init__.py:

<EMPTY FILE>

<代码>第1.pxd:

cdef class MyClass:
    cdef str good
    cdef str bad

    cdef str say(self, str x, str y)

first.pyx:

cdef class MyClass:

    cdef str say(self, str x, str y):
        return x

<代码>second.pxd:

from . cimport first # removing this does not help

second.pyx:

#cython language_level=3

from . cimport first

cdef first second(str a, str b):
    return first(a, b)

Objective

我只是试图将<代码>cimportfirstfirst.pxd输入second.pyx,以便在second.pyx中使用<>。

Compilation Errors

>>> cythonize -i -k -3 cythonize/second.pyx
Compiling C:...cythonizecythonizesecond.pyx because it changed.
[1/1] Cythonizing C:...cythonizecythonizesecond.pyx

Error compiling Cython file:
------------------------------------------------------------
...
#cython language_level=3

from . cimport first

cdef first second(str a, str b):
    ^
------------------------------------------------------------

cythonizesecond.pyx:5:5:  first  is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
#cython language_level=3

from . cimport first

cdef first second(str a, str b):
    return first(a, b)          ^
------------------------------------------------------------

cythonizesecond.pyx:6:11:  first  is not a constant, variable or function identifier
Failed compilations: cythonize.second

也许人们可以说明什么是能够使这项工作取得成功的最低可行范例?

问题回答

这一错误信息:

<条码>第二.pyx:5:5:首先不是识别符号

询问你,首先不是物体的名称。 这是档案的名称。 你正在进口档案及其物品,但你无法建造整个档案的物体。

例如,你可以这样做。

页: 1 MyClass1

a 类型。





相关问题
Can Django models use MySQL functions?

Is there a way to force Django models to pass a field to a MySQL function every time the model data is read or loaded? To clarify what I mean in SQL, I want the Django model to produce something like ...

An enterprise scheduler for python (like quartz)

I am looking for an enterprise tasks scheduler for python, like quartz is for Java. Requirements: Persistent: if the process restarts or the machine restarts, then all the jobs must stay there and ...

How to remove unique, then duplicate dictionaries in a list?

Given the following list that contains some duplicate and some unique dictionaries, what is the best method to remove unique dictionaries first, then reduce the duplicate dictionaries to single ...

What is suggested seed value to use with random.seed()?

Simple enough question: I m using python random module to generate random integers. I want to know what is the suggested value to use with the random.seed() function? Currently I am letting this ...

How can I make the PyDev editor selectively ignore errors?

I m using PyDev under Eclipse to write some Jython code. I ve got numerous instances where I need to do something like this: import com.work.project.component.client.Interface.ISubInterface as ...

How do I profile `paster serve` s startup time?

Python s paster serve app.ini is taking longer than I would like to be ready for the first request. I know how to profile requests with middleware, but how do I profile the initialization time? I ...

Pragmatically adding give-aways/freebies to an online store

Our business currently has an online store and recently we ve been offering free specials to our customers. Right now, we simply display the special and give the buyer a notice stating we will add the ...

Converting Dictionary to List? [duplicate]

I m trying to convert a Python dictionary into a Python list, in order to perform some calculations. #My dictionary dict = {} dict[ Capital ]="London" dict[ Food ]="Fish&Chips" dict[ 2012 ]="...

热门标签