Hvordan du kaller en C -funksjon i Python

Hvordan du kaller en C -funksjon i Python
Python og C er populære programmeringsspråk som lar brukere bygge flere mobile og nettbaserte applikasjoner. Imidlertid krever disse programmeringsspråk forskjellige miljøer og pakker for å kjøre på systemet ditt. Men de kan integreres, spesielt å kalle en C -funksjon i Python.

Hvis du er usikker på om det kan være mulig å ringe en C -funksjon i Python, følg denne artikkelens retningslinjer for ytterligere hjelp.

Ring en C -funksjon i Python

Å kalle en C -funksjon i Python er et spørsmål om enkle trinn diskutert nedenfor:

Trinn 1: Opprett først en C -fil på et hvilket som helst system. Jeg oppretter filen på et Linux -system ved hjelp av følgende kommando:

Nano MyCode.c

Steg 2: Inne i filen, legg til følgende funksjon.

int mycode (int nummen)

if (nummen == 0)
// Ikke utfør noen operasjon hvis nummeret er 0.
retur 0;
ellers
// return 1 annet retur 0 hvis nummeret er strøm på 2
return ((numb & (numb - 1)) == 0 ? 1: 0);

Merk: Du kan legge til hvilken som helst C -funksjon du vil ha i filen.

Trinn 3: Nå må du generere et delt bibliotek “Libfun.så" av filen ved å bruke følgende kommando:

CC -FPIC -SHARED -O LIBFUN.Så mycode.c

Dette genererer “Libfun.så" Delt bibliotek på systemet.

Ctypes er et Python -bibliotek som lar brukere ringe en C -funksjon i et Python -program. For å bruke dette biblioteket, må brukerne importere det ved starten av Python -programmet.

Trinn 4: La oss opprette en Python -fil ved hjelp av Nano Editor i Linux fra følgende kommando:

Nano Myfile.py

Trinn 5: Inne i filen, legg til følgende kode:

Importer ctypes
Num = 16
# libfun laster python -filen
# via moro.MyCode (),
# Få tilgang til C -funksjonen
Moro = Ctypes.CDLL ("Plassering av libfun.så ") # eller full vei til fil
# Ctypes vil sjekke det når et argument blir bestått
moro.Mycode.ArgTypes = [Ctypes.c_int]
# Ring funksjonen ved hjelp av øyeblikkelig (morsom)
# returner verdien etter funksjon i c
# kode
ReturnVale = moro.Mycode (Num)

Merk: Sikre utskifting “Mycode ()” med ditt funksjonsnavn og plasseringen av libfun.så fil.

Trinn 6: Lagre filen ved hjelp av “Ctrl+x”, Legg til “Y” og gå inn for å avslutte.

Trinn 7: Utfør Python -koden for å bekrefte den vellykkede samlingen på systemet.

python3 myfile.py

På denne måten kan du ringe en C-funksjon i Python på ethvert system ved å følge de ovennevnte trinnene.

Konklusjon

Kaller en C -funksjon i Python programmet kan enkelt gjøres ved først å lage en C -funksjon i en fil med en .c Utvidelse. Sett deretter filen for å generere et delt bibliotek etter det, importere “Ctypes” Bibliotek i et Python -program og bruk det delte biblioteket inne i koden for å ringe en funksjon i Python på et hvilket som helst system.