ctypes

Owijanie biblioteki C w Pythonie: C, Cython lub ctypes?

Chcę wywołać bibliotekę C z aplikacji Pythona. Nie chcę owijać całego API, tylko funkcje i typy danych, które są istotne dla ... j głosowaną odpowiedzią. Proponuję jednak przeczytać wszystkie odpowiedzi, aby uzyskać dobry przegląd. Jeszcze raz dziękuję.

Przekazywanie tablic Numpy do funkcji C dla wejścia i wyjścia

O rany, jestem głupcem. Po prostu pomijałem drugi i trzeci argument podczas wywoływania funkcji. Jak głupiec. Bo tym właśnie ... unkcję, dostaję segfault. Co mnie nie dziwi ... naprawdę Nie wiem, co tu robię. Czy ktoś może wskazać mi właściwy kierunek?

ctypes error: libdc1394 error: Failed to initialize libdc1394

Próbuję skompilować mój program do współdzielonej biblioteki, z której mogę korzystać z kodu Pythona przy użyciu ctypes. Bib ... / Expected output: Hello World Dostaję następujący błąd: libdc1394 error: Failed to initialize libdc1394 Co się dzieje?

Python: SWIG vs ctypes

W Pythonie, w jakich okolicznościach SWIG jest lepszym Wyborem niż ctypes do wywoływania punktów wejścia w bibliotekach współdzielonych? Załóżmy, że nie masz jeszcze plików interfejsu SWIG. Jakie są wskaźniki wydajności tych dwóch?

Jak używać klas C++ z ctypami?

Dopiero zaczynam pracę z ctypes i chciałbym użyć klasy C++, którą wyeksportowałem w pliku dll z Pythona za pomocą ctypes. Wię ... ypami? Alternatywnie rozważyłbym użycie SWIG lub Boost.Python ale ctypes wydaje się najłatwiejszą opcją dla małych projektów.

Python & Ctypes: przekazywanie struktury do funkcji jako wskaźnika do odzyskiwania danych

Przejrzałem inne odpowiedzi, ale nie mogę tego uruchomić. Próbuję wywołać funkcję w DLL do komunikacji z urządzeniami SMBus. ... Próbowałem ustawić open_smbus.restype = c_void_p() ale dostaję błąd: TypeError: restype must be a type, a callable, or None

Jak pakować i rozpakowywać za pomocą ctypes (Structure < - > str)

To może być głupie pytanie, ale nie mogłem znaleźć dobrej odpowiedzi w dokumentach ani nigdzie indziej. Jeśli użyję struct d ... le, buf) assert(e.index == e2.index) assert(e.counter == e2.counter) # note: for some reason e == e2 is False...

Jak przekazać duże tablice numpy między podprocesami Pythona bez zapisywania na dysku?

Czy jest dobry sposób na przekazanie dużej ilości danych pomiędzy dwoma podprocesami Pythona bez użycia dysku? Oto kreskówkow ... t zagotowanie danych trochę w podprocesie przed zapisaniem na dysk, ale miło by było przekazać cały monty procesowi 'master'.

Jak zapobiec drukowaniu biblioteki współdzielonej C na stdout w Pythonie?

Pracuję z lib Pythona, który importuje bibliotekę współdzieloną C, która drukuje na standardowym wyjściu. Chcę mieć czyste wy ... nie tego, co chcę w Pythonie. A może sposób, w jaki dostaję wskaźnik pliku na stdout, nie jest odpowiedni. Co o tym myślisz?

Pobieranie danych z tablicy ctypes do numpy

Używam biblioteki C w Pythonie (via ctypes) do wykonywania serii obliczeń. Na różnych etapach uruchamiania chcę pobierać dan ... wiele innych kodów post-processingowych, które opierają się na funkcjonalności numpy które chcę wykorzystać z tymi danymi .

Prototypowanie kodu Pythona przed kompilacją

Rozmyślałem nad napisaniem biblioteki Peak fitting przez jakiś czas. Znam Pythona dość dobrze i planuję zaimplementować wszys ... azana interpretowana przez skompilowaną bibliotekę dopasowania kodu. Przekazywanie i zwracanie tablic jest również niezbędne.

Wskaźniki i tablice w Pythonie ctypes

Mam DLL zawierający funkcję C z prototypem takim jak: int c_read_block(uint32 addr, uint32 *buf, uint32 num); Chcę wywołać ... uint32. Czy powinienem używać create_char_string. Jeśli tak, to jak przekonać Pythona do "oddania" tego bufora do lp_c_ulong?

Jak przekonwertować wskaźnik do tablicy c na tablicę Pythona

Mam funkcję wywołania zwrotnego C++, która wywołuje Python za pomocą ctypes. Parametry tej funkcji są wskaźnikiem do tablicy ... kroku allocate. Czy i tak można załadować dane z tablicy C++, a następnie przekonwertować je na tablicę pasującą do scipy?

Zmiana ścieżki biblioteki LD w czasie wykonywania dla ctypów

Jak zaktualizować tę zmienną środowiskową w czasie wykonywania, aby ctypes mógł załadować bibliotekę w dowolnym miejscu? Prób ... Projects/pyCFA635/lib" os.putenv('LD_LIBRARY_PATH', "/home/starlon/Projects/pyCFA635/lib") lib = CDLL("libevaluator.so")

Jak przekonwertować listę Pythona na tablicę C przy użyciu ctypes?

Jeśli mam następujące 2 zestawy kodu, jak je ze sobą skleić? void c_function(void *ptr) { int i; for (i = 0; i < ... oid_p * 10 for e in y: x[i] = e Ale to dostaje błąd składni. Kod C wyraźnie chce adresu tablicy. Jak mam to zrobić?

Python i ctypes: jak poprawnie przekazać "wskaźnik do wskaźnika" do DLL?

Mam DLL, który przydziela pamięć i zwraca ją. Funkcja w DLL wygląda następująco: void Foo( unsigned char** ppMem, int* pSiz ... mem[ 3 ] Spodziewam się, że print pokaże "4 0 1 2 3", ale pokazuje "4 221 221 221 221" O_O. jakieś wskazówki co robię źle?

Jak zwrócić tablicę z funkcji C++ do Pythona za pomocą ctypes

Używam ctypes do implementacji funkcji C++ w Pythonie. Funkcja C++ powinna zwracać wskaźnik do tablicy. Niestety nie wiem, ja ... y.so -o library.so function.o Czy masz jakieś sugestie, co muszę zrobić, aby uzyskać dostęp do wartości tablicy w Pythonie?

ctypes: konstruuj wskaźnik z dowolnej liczby całkowitej

Dla celów niskiego poziomu, muszę skonstruować wskaźnik ctypes z dowolnego adresu, podanego jako liczba całkowita. Na przykła ... OVERLAPPED z win32file.PyOVERLAPPED, do integracji funkcji ctypes-exposed z API owiniętymi plikami Win32. Dzięki, - Tomer

Python ctypes: jak zwolnić pamięć? Uzyskiwanie błędnego wskaźnika

Chcę pobrać ciąg z biblioteki C / c++ z ctypami do Pythona. Mój kod wygląda tak: Kod w lib: const char* get(struct someth ... sugerować boost:: python lub tak). *** glibc detected *** python2: munmap_chunk(): invalid pointer: 0x00000000026443fc ***