Python aumenta esempi

Python aumenta esempi
“Boost è un'interfaccia tra Python e C ++ fornito tramite il Python Language Framework. Ti consente di fornire rapidamente e facilmente le classi, i metodi e le entità C ++ a Py e, al contrario, senza la necessità di ulteriori strumenti al di fuori del traduttore C ++. Poiché Boost ha lo scopo di incapsulare le interfacce C ++ senza modificare il programma C ++, non dovresti fare nulla di diverso per coprire un'interfaccia C ++."

È meglio esporre i moduli di terze parti a Python usando Python. A causa dell'utilizzo da parte dell'ovvia libreria di sofisticati metodi di metaprogrammazione, l'incapsulamento del codice sembra essere una forma di linguaggio di progettazione di interfaccia espressiva, semplificando la sua semantica per loro (IDL).

Prima di dare un'occhiata all'esempio, dobbiamo impostare il boost Python nel sistema Linux. Quindi, dobbiamo scaricare il file TAR dal Web nella nostra home directory, come mostrato nell'immagine seguente. Potrebbero essere necessari fino a 15 minuti o più in base alla velocità di Internet del sistema.

È necessario estrarre questo file "tar" scaricato nella stessa cartella dopo il download riuscito. Per questo, devi prima aprire la console terminale del sistema Linux. Se non conosci il modo di farlo, prova solo Ctrl+Alt+T e il terminale verrà lanciato in pochi secondi.

All'interno dell'area della query del terminale, è necessario utilizzare la query "catrame" insieme all'opzione "-xf" seguita dal nome completo di un file, i.e., compresa la sua estensione “Tar.GZ ". L'uso di "-xf" significa che questo file deve essere estratto con forza senza interruzione o problema. Verrà estratto in pochi secondi. Puoi sedere tutti i file e le cartelle della directory di lavoro corrente per vedere se è stato estratto correttamente o no.

Ora, ci muoveremo all'interno della cartella Boost estratta per vederne il contenuto. Per questo, abbiamo utilizzato l'istruzione "CD" insieme al nome completo della cartella Boost e abbiamo successo. Abbiamo provato le istruzioni "LS" dell'elenco per elencare tutti i suoi sottofuli e sotto-conduttori sullo schermo della shell. Nell'elenco, ci sono stati mostrati diversi file di bash, alcuni file HTML, HTML e JAM.

Per creare il motore di Boost Python nel sistema Linux, dobbiamo utilizzare il file bash chiamato "Bootstrap.sh "nell'area di query per eseguirlo con"./"Caratteri all'inizio. Questo file può essere visto come il testo evidenziato verde all'interno dei file elencati e delle cartelle della cartella estratta boost sulla nostra console. Ha iniziato a creare il modulo Boost tramite il set di strumenti C, i.e., Il compilatore C chiamato GCC. Potrebbe essere necessario fino a 1 minuto per completare questo processo e passare al passaggio successivo di questo articolo.

Il passaggio successivo in questo processo è quello di effettuare la configurazione all'interno della cartella particolare del sistema Linux. Per questo, è necessario eseguire il file "B2" dai file e cartelle sopra quotati all'interno del comando di installazione. Dobbiamo utilizzare i diritti sudo per l'esecuzione di questa istruzione, insieme al percorso della cartella in cui si desidera configurarla. Nel nostro caso, quella cartella sarebbe la cartella "/USR" del nostro sistema operativo Linux.

Lo stesso comando può essere eseguito nella specifica di un percorso di configurazione. L'uso di questa istruzione di installazione può richiedere fino a 5 minuti per eseguire l'esecuzione.

È tempo di creare 3 nuovi file all'interno della cartella estratta per boost o la cartella domestica del sistema. Quindi, abbiamo usato l'istruzione touch 3 volte per creare un file C ++, un Python e un file CMake. Assicurati di avere l'interprete Python e il compilatore C ++ installato all'estremità insieme al modulo CMake. Il file cmake deve contenere l'estensione "txt" e i nomi dei file per gli altri due file possono differire.

All'interno del formato di file di tipo di testo CMake, abbiamo specificato la versione di Python che abbiamo utilizzato per l'implementazione di questo articolo. La funzione variabile Find_Package è stata utilizzata per scoprire l'interprete di Python, le sue librerie e i suoi componenti Boost di Python. Insieme a ciò, è necessario includere le directory richieste di Python e Boost tramite l'uso di Include_Directories.

Nella riga successiva, abbiamo usato il python_add_module () per utilizzare il modulo Nativib nel file CProj C ++, i.e., sarà mostrato dopo questo. Abbiamo utilizzato la variabile funzione file () per copiare il progetto.File Py a destinazione. Salva questo codice ora.

È ora di dare un'occhiata al file C ++ chiamato "CPROJ" in questo articolo. Abbiamo creato una funzione puntatore del tipo di carattere costante denominata "benvenuto" all'interno di questo codice. Restituisce qualche messaggio alla sua funzione di chiamata. Abbiamo utilizzato boost_python_module insieme al nome di un file di progetto C ++ senza la sua estensione. All'interno di questa funzione boost_python_module (), abbiamo utilizzato il pacchetto Boost di Python per definire la funzione di benvenuto e passarla la funzione di benvenuto come argomento.

Il file Python chiamato "Progetto.Py ӏ stato avviato con l'importazione del modulo Nativib tramite l'uso della parola chiave di importazione. Alla riga successiva, abbiamo chiamato la funzione di benvenuto dal file C ++ sopra utilizzando il modulo Nativib nell'istruzione di stampa visualizzata.

Ora abbiamo creato una nuova cartella di build all'interno della cartella estratta Boost con l'uso della query MKDIR.

Dopo questo, abbiamo usato la query cmake per costruire il tipo di cmake. Dopo questo, prova il comando Make seguito dall'esecuzione di un file Python.

Conclusione

Attraverso questo processo, sarai in grado di utilizzare le funzioni, le librerie e i pacchetti C ++ all'interno del codice Python. Abbiamo discusso di come puoi creare boost abilita su Ubuntu 20.04 Sistema operativo Linux. Tutti i passaggi sono molto facili da imparare e implementare. Questo articolo può essere implementato su qualsiasi distribuzione Linux.