Zum Hauptinhalt Zur Navigation

Golem Plus Artikel
Sprachenübergreifendes Programmieren:
Eine wundervolle Brücke zwischen C und Python

Python -Programme können davon profitieren, Code oder ganze Bibliotheken oder Module aus anderen Sprachwelten zu integrieren. Wir zeigen, wie das mit C geht.
/ Michael Bröde
17 Kommentare News folgen (öffnet im neuen Fenster)
Eine Brücke zwischen zwei Sprachwelten (Bild: Pixabay)
Eine Brücke zwischen zwei Sprachwelten Bild: Pixabay

Obwohl Python eine sehr leistungsstarke Programmiersprache ist, kann es vorkommen, dass der Funktionsumfang erweitert werden muss. C ist dafür eine gute Option. Die entsprechenden Verfahren haben es aber in sich. Ein tiefes Verständnis der C-Programmierung und der Python-/C-API ist notwendig, Entwickler müssen sich mit Speicherverwaltung, Zeigerarithmetik und der fehleranfälligen Schnittstelle zwischen beiden Sprachen auseinandersetzen. Zudem ist eine gründliche Kenntnis der Python-Interna erforderlich, um sicherzustellen, dass die Implementierungen effizient und kompatibel sind.

Die Erweiterung von Python um C-Routinen bietet eine Reihe von Vorteilen. Dazu gehören etwa die Wiederverwendung vorhandener C/C++-Bibliotheken und die Optimierung der Performance von Python-Applikationen. Wir stellen in diesem Artikel zwei der gebräuchlichsten Verfahren zur Erstellung und Installation solcher C-Erweiterungen vor. Anhand von Programmbeispielen zeigen wir, wie der Aufruf einer C-Funktion in Python implementiert wird, wie der Datenaustausch zwischen Python und C funktioniert, welche Distributionspakete es gibt und wie sie erzeugt und installiert werden.

Golem Plus Artikel