python - Cython 尝试将 self 与 cython 类一起使用
问题描述
我正在尝试学习一点 cython,以便我可以更快地编写代码。我从指定 cython 函数开始,但正如您所见,这导致了错误。除了我遇到的这个特定错误之外,我正在慢慢理解它。我在类的init函数中定义了int类型变量。这在没有 cython 的情况下可以正常工作,但是当我尝试对类进行 cython 化时,它会给我一个属性错误。我现在明白只有当您可以从代码内部访问类/函数时才使用 cdef,而我正在这样做。
cdef class Renamednotclassname:
def __init__(self, var1, var2):
cdef int self.rs = 0
cdef int self.rl = 0’
这是给我问题的部分,这对我来说没有意义,因为我可以在同一个类的另一个函数中定义一个 cdef 整数就好了。
AttributeError:“cythonfile.classname”对象没有属性“rs”
我有一个调用我所有内部类和函数的主函数,我使用导入从外部文件调用主函数。我已经重命名了我所有的类、函数和变量(名称没有问题)。属性错误是说 file.class 对象没有属性 self.rs。我的问题是为什么这适用于本机 python 而不是 cython,我该如何解决这个问题?
解决方案
推荐阅读
- c++ - 使用 Microsoft Visual Studio 2015 Community 和 Allegro5 Nuget 包无法解析的外部符号
- postgresql - postgres 数据库的备份给出 ssl 错误
- mysql - 找出每个 SQL 中的百分比
- r - R:如何从一个非常大的表格中快速选择两列中的常用词或相同数字?
- python - 保存到磁盘时 Numpy 数组大小不同(与 nbytes 相比)
- java - 错误 MSB6006:“java”退出,代码为 1 Proguard Xamarin
- c# - 如何统一获取线渲染器的所有点位置?
- html - 填充对宽度动画的意外影响
- python - 全局变量没有改变事件内的值
- python-3.x - 过滤掉python列表中的字符串日期