いくつかのプロパティを持つ python クラスがあります。クラスを cython 拡張型に変換し、プロパティの cython 構文を使用してその中にプロパティを定義しましたhttp://docs.cython.org/src/userguide/extension_types.html#properties。def を使用してプロパティを宣言する必要があることがわかります。そうしないと、「cdef ステートメントはここでは許可されていません」というコンパイル エラーが発生します。
私のクラスは別の cython モジュール内でも使用されており、Python の速度ではなく c の速度でクラスからプロパティにアクセスしたいと考えています。get_params() や set_params(params) などの cdef セッター関数とゲッター関数を使用すると高速になることはわかっていますが、この変更を行う場合は、Python コードでも行う必要があります (したがって、私の python と cython コードあまり違いはなく、互換性があります) しかし、それは python コードを読みにくくします.... ジレンマ!
cython のプロパティにすばやくアクセスする方法はありますか? または、setter 関数と getter 関数を使用するように Python コードを変更する必要がないように、他に何か提案はありますか?