- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在 cython 中得到了代表 2 个类的 3 个文件:
1. ../src/cython/class1.pyx
2. ../src/cython/class1.pxd
3. ../src/cython/class2.pyx
我想将 class1
中定义的类导入到 class2
中,以便能够对自定义类使用 cython 类型。
在class2
内部,如果我像这样导入Class1
,我无法编译:
from src.cython.class1 cimport Class1
在class2
内部,如果我像下面一样导入Class1
,我可以编译,但出现错误No module named 'src.cython.class1'
执行时:
from class1 cimport Class1
我正在从 ../
运行 setup.py
此问题被标记为可能与另一个截然不同的问题重复。我收到这些错误只是因为我错过了 cython
文件夹中的 __init__.py
。
最佳答案
目录结构应该是这样的:
../src/cython/class1.pyx
../src/cython/__init__.pxd
../src/cython/class1.pxd
../src/cython/class2.pyx
在class2.pyx中:
from class1 cimport Class1
setup.py 应该具有:
extensions = [Extension('my_package.cython.class1',
<..>
),
Extension('my_package.cython.class2',
<..>,
),
]
“无模块”错误是因为目录名称与扩展名称不匹配,此外目录需要定义为包。
__init__.pxd
相当于 cimport
的 __init__.py
。
关于python - cython 路径难以编译 pyx pxd 文件的工作版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50631966/
我正在进行一个项目,该项目使用了Python库Pycodec2,为了使该库工作,它需要安装codec2。我遇到的问题是,当我尝试构建/安装库时,我收到了下面的错误。。吃豆人-S编解码器2。PIP安装p
我尝试安装 triangle适用于 Kubuntu 14.04 上的 python。如果我尝试通过 easy_install 或从源代码安装它,我会收到以下错误: sudo easy_install
尝试从其他程序包导入pxd定义。 一个简单的例子,一个.pxd文件: cdef inline void a(): print "a" b.pyx文件: cimport a def b():
已解决,请参阅编辑 #3 假设一个包的结构如下: Some_Package/ some_package/ __init__.py core/
我已经将Cython魔术加载为(在我的ipython笔记本中): %load_ext Cython 以上步骤成功。 然后我指的是“ http://lxml.de/capi.html#writing-e
我的项目具有以下目录结构: . ├── Makefile ├── pxd ├── pyx │ ├── Landscaping.pyx │ ├── Shrubbing.pxd │ └── S
创建 pxd 定义文件的最简单方法是什么,它只是收集通过 pyx 文件复制的 cdef,而不创建新的扩展名? 我的情况如下:我想在 pxd 文件 (hp/src/common.pxd) 中收集一些外部
我在 cython 中得到了代表 2 个类的 3 个文件: 1. ../src/cython/class1.pyx 2. ../src/cython/class1.pxd 3. ../src/cyth
我有一个项目由不同文件夹中的几个 Cython 模块组成: clibs File.cpp File.hpp module module/folder __init__.py
一种使用 cython 的方法,cython 是 Python 到 C 的编译器,不是在 Cython 中重写 Python 代码,而是编写一个与您声明变量类型的模块同名的 .pxd 文件,如 her
我正在尝试通过实现从 C++ 到 Python 的线性插值器来学习 cython。我正在尝试将 PXD 头文件用于最终的 Intepolator 对象,以便它可以在其他方法/类中重复使用,因此我希望
我正在尝试使用 cython .pxd 来扩充现有的 python 源代码,正如 Stefan Behnel 在 "Using the Cython Compiler to write fast Py
我有一个函数,我想抽象成一个可导入的模块: cdef list generate_random_vectors(int num_vectors, int length, float scale=1):
我是 Cython 的新手,所以我可能遗漏了一些明显的东西,但我已经通读了文档并且已经为此苦苦思索了一段时间。 我有一个 *.pyx 文件,我使用 setup.py 文件构建如下: from dist
我有这样的目录结构: project/lib/src/a.pyx project/lib/src/ project/helpers/cython/b.pyx project/helpers/cytho
按照此处的示例“Augementing .pxd”,我正在尝试使用“.pxd”文件来扩充纯 Python 文件。 (在纯 python 文件外部添加类型定义)。 python 文件: class A(
我有一个 Python 程序,我想使用 Cython 加速它,同时保持 Python 解释器(“纯 Python 模式”)可读源代码。通过按原样编译,我的速度提高了 20%。然后我创建了一个 .pxd
我正在重新评估将外部 C 库包装到 Python 中的不同方法。我很久以前就选择使用普通的 Python C API,它快速、简单、独立,而且我认为它是面向 future 的。然后我偶然发现了 PyP
我是一名优秀的程序员,十分优秀!