Variabili statiche Python C API
-
24-09-2019 - |
Domanda
Come si potrebbe esporre le variabili "statiche" come questo
class MyClass:
X = 1
Y = 2
tramite l'API C? L'unica variabile sulla PyTypeObject che sembra che sarebbe il lavoro è tp_members, ma non vedo bandiera nel PyMemberDef per indicare che il membro dovrebbe essere per-classe, non per-esempio.
Per un po 'più di chiarimento, in quanto può cambiare la risposta, sto cercando di esporre un enum C a Python in modo tale che l'enumerazione
enum MyFlags {
Alpha = 0,
Beta = 1
};
Si può accedere in Python come:
module.MyFlags.Alpha
module.MyFlags.Beta
Soluzione
Basta metterli in del tipo tp_dict esempio con PyDict_SetItemString .
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow