Importuj stałe z pliku .h do Pythona

Szukałem prostej odpowiedzi na to pytanie, ale wydaje się, że nie mogę go znaleźć. Wolałbym trzymać się z dala od jakichkolwiek zewnętrznych bibliotek, które nie są jeszcze zawarte w Pythonie 2.6 / 2.7.

Mam 2 pliki nagłówkowe c, które przypominają następujące:

//constants_a.h
const double constant1 = 2.25;
const double constant2 = -0.173;
const int constant3 = 13;

...

//constants_b.h
const double constant1 = 123.25;
const double constant2 = -0.12373;
const int constant3 = 14;

...

I mam klasę Pythona, którą chcę zaimportować te stałe do:

#pythonclass.py
class MyObject(object):
    def __init(self, mode):
        if mode is "a":
            # import from constants_a.h, like:
            # self.constant1 = constant1
            # self.constant2 = constant2
        elif mode is "b":
            # import from constants_b.h, like:
            # self.constant1 = constant1
            # self.constant2 = constant2

...

Mam kod c, który również używa stałych i przypomina to:

//computations.c
#include <stdio.h>
#include <math.h>
#include "constants_a.h"

// do some calculations, blah blah blah

Jak mogę zaimportować stałe z pliku nagłówkowego do klasy Pythona?

Powodem dla plików nagłówkowych constants_a.h i constants_b.h jest to, że używam pythona do wykonywania większości obliczeń przy użyciu stałych, ale w pewnym momencie muszę użyć C, aby wykonać bardziej zoptymalizowane obliczenia. W tym momencie używam ctypes do zawijania kodu c do Pythona. Chcę trzymać stałe z dala od kodu na wypadek, gdy muszę je zaktualizować lub zmienić, a także uczynić mój kod znacznie czystszym. Nie wiem, czy pomaga to zauważyć, że używam także NumPy, ale poza tym nie ma innych niestandardowych rozszerzeń Pythona. Jestem również otwarty na wszelkie sugestie dotyczące projektu lub architektury tego programu.

questionAnswers(4)

yourAnswerToTheQuestion