GNU/Linux >> Linux Esercitazione >  >> Linux

Cos'è Python:un'introduzione a un linguaggio di programmazione multipiattaforma

Python Illustrazione di Walker Cahall

Pubblico di destinazione

Questo articolo presuppone che il lettore abbia almeno una familiarità di base con i linguaggi di programmazione.

Introduzione

Qualsiasi corso di Introduzione all'Informatica sarebbe incompleto senza una menzione di Python. Può sembrare relativamente nuovo nella scena dei linguaggi di programmazione, ma è in uso dall'inizio degli anni '90. Decine di grandi aziende, tra cui Google, Facebook e persino la NASA e il Jet Propulsion Laboratory di Pasadena, sono tra le organizzazioni che utilizzano Python.
.

Storia dell'origine di Python

Python è stato sviluppato da Guido van Rossum alla fine degli anni '80, incorporando ciò che vedeva come miglioramenti al linguaggio di programmazione ABC. Poiché è un grande fan dei Monty Python, la compagnia comica britannica, ha chiamato il linguaggio "Python", arrivando persino a chiamare l'ambiente di sviluppo integrato, o IDE, IDLE in onore di Eric Idle, uno dei membri del gruppo .

Van Rossum è ancora uno dei principali autori e contributori del linguaggio e ha ricevuto il titolo di BDFL (Benevolent Dictator For Life) dalla comunità Python.

Le caratteristiche di Python

Python è un linguaggio multipiattaforma:un programma Python scritto su un computer Macintosh verrà eseguito su un sistema Linux e viceversa. I programmi Python possono essere eseguiti su un computer Windows, purché sul computer Windows sia installato l'interprete Python (la maggior parte degli altri sistemi operativi viene fornita con Python preinstallato). Un'applicazione chiamata py2exe esiste che consente a un utente di creare un binario Windows da un programma Python in modo che un programma Python sviluppato su un altro sistema possa essere eseguito su una macchina Windows su cui non è installato Python.

Python differisce da molti altri linguaggi per l'uso di spazi bianchi e rientri. Mentre molti altri linguaggi terminano le istruzioni di programmazione usando terminazioni di riga come punto e virgola, Python non ha tale desinenza. Inoltre non racchiude blocchi di codice come for loop e if affermazioni tra parentesi graffe. Piuttosto, Python usa i rientri per definire un blocco di codice. Ogni rientro successivo definisce un blocco successivo. Ad esempio, esamina il codice seguente:

if i == 1:
    print "i = 1"
    for x in range(10):
        print "x = ", x
else:
    print "i does not equal 1"

Python interpreta la quarta riga (print "x= ", x ) per far parte del for loop, anziché parte di if istruzione-a causa del suo livello di indentazione. Il rientro delinea anche le definizioni di funzioni e classi.

Linguaggio di programmazione o di scripting?

Tra appassionati e detrattori, spesso si pone la domanda:Python è un linguaggio di scripting o un linguaggio di programmazione? Prima di poter provare a rispondere, esaminiamo cosa intendiamo per differenziare i due.

Linguaggi di programmazione

I linguaggi di programmazione sono compilati da un programma speciale chiamato compilatore. Linguaggi comuni come C e C++ devono essere tradotti da un compilatore in codice macchina, incomprensibile per gli esseri umani, che un computer può leggere ed elaborare. Quando scrivi un programma in C e lo compili, il risultante .o file è ciò che legge il computer. Il codice compilato di solito si traduce in un codice più veloce e la compilazione deve avvenire solo una volta (a meno che non si modifichi il codice). Alcuni compilatori eseguono automaticamente alcune ottimizzazioni di base e altri hanno diversi flag che possono essere utilizzati per ottimizzare il codice per più processori e persino per l'elaborazione parallela.

Il codice compilato prodotto da un linguaggio di programmazione viene eseguito più spesso sull'hardware su cui è scritto. Un programma scritto e compilato in C++ viene eseguito direttamente dal processore su cui è stato compilato. Sebbene ciò possa velocizzare l'esecuzione del codice, a volte ha anche l'effetto indesiderabile di rendere un programma compilato dipendente dal processore e dalla macchina. Il codice compilato su un determinato computer potrebbe non funzionare nemmeno su una macchina separata, quasi identica, a causa di piccole differenze nell'hardware.
.

Linguaggi di scripting

I linguaggi di scripting, d'altra parte, vengono letti e interpretati ogni volta che li esegui, senza che un compilatore crei un file di linguaggio macchina. Non viene eseguita alcuna ottimizzazione, quindi se scrivi un codice sciatto, otterrai risultati sciatti, che possono comportare programmi più lenti.

I linguaggi di scripting vengono eseguiti anche "all'interno" di un altro programma, anziché essere eseguiti direttamente sul processore host. PHP viene eseguito all'interno del motore di scripting PHP, ad esempio, e gli script bash vengono eseguiti all'interno della shell bash. (Un'eccezione a questa regola è Java; Java è considerato un linguaggio di programmazione, ma viene eseguito all'interno della Java Virtual Machine (JVM)).
.

Il verdetto

Allora, cos'è Python? Sebbene sia spesso chiamato linguaggio di programmazione, Python è, tecnicamente, un linguaggio di scripting. Il suo codice non utilizza un compilatore e può essere eseguito praticamente su qualsiasi dispositivo che esegue la shell Python. Condivide anche un paio di altre somiglianze con i linguaggi di scripting rispetto ai linguaggi di programmazione.

I linguaggi di scripting sono spesso meno rigidi quando si tratta di sintassi e formato. Lo spazio bianco viene trattato in modo più indulgente (con l'eccezione del rientro, menzionato in precedenza). Di conseguenza, i programmatori non devono passare ore a eseguire il debug del codice cercando di trovare un punto e virgola fuori posto o una parentesi graffa mancante. È motivo di orgoglio per molti programmatori Python che il loro codice sia facilmente leggibile da un essere umano, rendendo più semplice il debug, quando necessario.

I linguaggi di programmazione (come il C++) tendono ad essere sintatticamente più complessi e difficili da apprendere, mentre i linguaggi di scripting sono meno intimidatori. Considera un programma "Hello, world" in C++:

#include <iostream>;  
using namespace std;  
int main(){  
      cout << "Hello, world!" << endl;  
      return 0;  
}

.
Ora, lo stesso programma in Python:

print "Hello, world!"

.
Poiché non è un linguaggio compilato, alcuni puristi della programmazione denigrano Python, dicendo che può essere lento e meno efficiente. Man mano che i processori migliorano in termini di velocità e architettura, tuttavia, diventa meno apprezzabile la differenza di velocità tra un linguaggio compilato e uno con script. Solo quando le prestazioni serie sono un problema potrebbe diventare evidente una differenza tra i due.
.

Lo scisma della versione Python

I nuovi arrivati ​​nell'ambiente Python potrebbero notare e interrogarsi sulle differenze tra la versione 2 e la versione 3 del linguaggio. A differenza della maggior parte delle versioni software, le due versioni esistono simultaneamente e separatamente e non sono completamente compatibili tra loro.

La versione 3.0 è stata rilasciata nel dicembre del 2008 ed è stata progettata per correggere alcuni difetti del linguaggio, principalmente rimuovendo alcuni modi duplicati di eseguire alcune attività. Tuttavia, non è completamente retrocompatibile con la versione 2 e i programmi scritti in 2.7 potrebbero non funzionare quando vengono trasferiti alla versione 3. Per un breve periodo, il suo sviluppo è stato parallelo alla versione 2, ma quello sviluppo parallelo è cessato con la versione 3.2 nel febbraio 2011. Strumenti esistono per rendere un po' più semplice la portabilità e la conversione.

Quando un programmatore inizia a lavorare in Python, deve decidere quale versione utilizzare. Al momento della stesura di questo documento, la versione più comunemente utilizzata è la 2.7. È anche la versione 2.x finale; tutte le versioni future saranno per la versione 3.x. Quindi, anche se la versione 2.7 è ufficialmente a fine vita, è ancora una scelta popolare per la sua vasta collezione di librerie. Fino a quando l'adozione e il tasso di utilizzo della versione 3.x non aumenteranno (e la community svilupperà il supporto della libreria di questa versione), questo scisma potrebbe continuare a persistere.
.

Conclusione

Python è un linguaggio estremamente capace che molti sviluppatori di software trovano utile imparare. La sua portabilità e facilità d'uso, così come la sua accessibilità ai nuovi programmatori, lo rendono una soluzione estremamente interessante per molti problemi e applicazioni di programmazione.

Per articoli e istruzioni più interessanti, come Come fare:Python 3 e Creazione di un ambiente virtuale (venv) in CentOS 6.7 , assicurati di visitare il nostro blog.

Atlantic.Net

Altantic.Net offre molti hosting VPS, hosting cloud gestito, installazioni cloud di applicazioni con un clic e molte altre soluzioni di hosting.
.
.


Linux
  1. Linguaggio di programmazione C - Introduzione

  2. Come iniziare a imparare un linguaggio di programmazione

  3. Qual è il tuo linguaggio di programmazione o scripting Linux preferito?

  4. Risorse per la programmazione della shell portatile?

  5. Quali linguaggi di programmazione posso assumere su un server Linux casuale per impostazione predefinita?

Installa il linguaggio di programmazione racket su Linux

Come installare il linguaggio di programmazione Go in Alpine Linux

Come installare il linguaggio di programmazione Swift su Debian 11 Bullseye

Come installare il linguaggio di programmazione Go su Ubuntu 20.04

Come installare il linguaggio di programmazione Rust su AlmaLinux 8

Come installare il linguaggio di programmazione Rust su Linux