Ich schreibe gerade ein Python-Modul in C. Mit Py_BuildValue gebe ich Python-Objekte zurueck, hier steht ja, wie ich damit die unterschiedlichen Datentypen von Python erzeugen kann. Ich finde aber nirgends, wie ich True oder False erzeugen kann...
Weiss da jemand bescheid?
Module in C: Booleans mit Py_BuildValue()?
- birkenfeld
- Python-Forum Veteran
- Beiträge: 1603
- Registriert: Montag 20. März 2006, 15:29
- Wohnort: Die aufstrebende Universitätsstadt bei München
Gar nicht. Du wirst wohl den Platz mit etwas anderem füllen müssen, die Stelle wieder decrefen und mit PyTuple_SetItem auf Py_True/Py_False setzen.
- birkenfeld
- Python-Forum Veteran
- Beiträge: 1603
- Registriert: Montag 20. März 2006, 15:29
- Wohnort: Die aufstrebende Universitätsstadt bei München
Ein eleganterer Weg wäre eine Converterfunktion:
Code: Alles auswählen
PyObject *
to_bool(int val) {
if (int) Py_RETURN_TRUE;
Py_RETURN_FALSE;
}
res = Py_BuildValue("O&", to_bool, 1);