Oggi vi parliamo di Python, un linguaggio di programmazione ad alta funzionalità, perfetto anche per sviluppare applicazioni distribuite, scripting, system testing e computazione numerica.
Scopriamo insieme la sua storia, le caratteristiche e i vantaggi.
Cosa significa Python
Per capire cosa significa Python bisogna partire dalla sua storia. L’ideatore fu Guido Van Rossum che, all’inizio degli anni novanta, creò questo linguaggio semplice, dinamico e flessibile, ancora oggi molto diffuso. Il nome nasce dalla passione di van Rossum per i Monty Python e per la loro serie televisiva Monty Python’s Flying Circus.
Che cos’è Python
Spesso paragonato a Ruby, Tcl, Java, Perl, Visual Basic e JavaScript, Python è un linguaggio che supporta il paradigma object oriented, la programmazione strutturata e diversi parametri di programmazione funzionale.
Si distingue dagli altri linguaggi principalmente per queste caratteristiche:
- variabili non tipizzate
- utilizzo dell’indentazione per la definizione delle specifiche
- overloading di operatori
- funzioni tramite delegation
- ampia varietà di tipi e funzioni di base, librerie standard e sintassi avanzate come slicing e list comprehension
In Python il controllo dei tipi rimane comunque forte (si parla di strong typing) ed è eseguito a runtime (dynamic typing).
In pratica una variabile è un contenitore a cui viene associato un nome che a sua volta, nel corso del tempo, può essere associato ad altri contenitori anche differenti.
Per quanto riguarda la liberazione automatica, Python usa un garbage collector.
Differenza tra Python e Perl
Come vi abbiamo anticipato Python è spesso paragonato ad altri linguaggi tra i quali Perl.
Entrambi, infatti, sono considerati linguaggi di scripting ma Python – oltre a essere utile per scrivere script di sistema – permette di sviluppare applicazioni molto più complesse grazie alla quantità di librerie disponibili.
Caratteristiche Python
Python non è propriamente un linguaggio interpretato perché il codice sorgente non è direttamente convertito in linguaggio macchina.
In poche parole, il codice sorgente attraversa prima una fase di pre-compilazione in bytecode, che viene poi riutilizzato dopo la prima esecuzione del programma: in tal modo si evita di reinterpretare ogni volta il codice sorgente e si incrementano le prestazioni.
Inoltre, l’interprete Python supporta un modo d’uso interattivo che permette di inserire il codice direttamente da un terminale, ottenendo subito il risultato. Non solo: l’interprete viene contenuto nella libreria standard ed è così possibile far valutare le stringhe arbitrarie in quel contesto corrente, ma anche in altri contesti utilizzando liste contenenti l’elenco dei simboli definiti.
Se invece volete sviluppare test unitari automatici, potete utilizzare il framework per lo unit testing di cui dispone Python.
Ma scopriamo altre caratteristiche Python.
Python come si usa
Stiamo parlando di un linguaggio a tipizzazione automatica dove le variabili sono tutte dei puntatori ad oggetto: se viene assegnato un valore intero a una variabile, ciò non preclude che dopo le possa essere assegnata una lista oppure una stringa.
Differenze PHP e Python
A differenza di PHP, i numeri non sono argomenti validi per le operazioni su stringa perché in Python si ha la conversione implicita per i tipi numerici ma non quella tra numeri e stringhe.
Per quanta riguarda i tipi base, questo linguaggio mette a disposizione un gran numero di tipi numerici e contenitori, dai tipi standard – quali interi e stringhe – fino ai tipi più complessi, come quelli interi a grandezza arbitraria, liste, insiemi e dizionari, supportandoli con delle sintassi per la costruzione degli stessi (cosiddetti letterali). Inoltre è possibile importare altri tipi dalle librerie standard e crearne di nuovi tramite le classi.
Per quanto concerne i contenitori, Python utilizza contenitori standard classificabili come:
- sequenze, ovvero contenitori ordinati, basati sull’ordinamento, l’indicizzazione intera e la creazione di sottosequenze attraverso slicing
- insiemi
- dizionari, i cosiddetti dict, creati tramite una sintassi raffigurata da una coppia di dati (indice, detto chiave, + suo valore corrispondente) separati da due punti, ad esempio x:y
Python come si legge
Python come si legge? Stiamo parlando di un linguaggio creato per essere di facile lettura.
Infatti, a differenza di linguaggi come C o Perl, è composto da pochi costrutti sintattici: ad esempio, ha soltanto 2 forme di ciclo (for e while) e non utilizza cicli complessi come until, che però possono essere ugualmente creati tramite equivalenti più semplici.
Quale versione di Python scegliere?
Se siete indecisi su quale versione di Python scegliere, sappiate che ad oggi esistono diverse implementazioni a partire da Psyco, un’estensione in grado di velocizzare alcuni codici, in particolare l’implementazione di algoritmi.
Tra le altre implementazioni Python disponibili trovate:
• Python for S60, per dispositivi con sistema operativo Symbian
• Jython, in linguaggio Java
• IronPython, creato per Microsoft .NET
• PyPy, scritta in Python, che semplifica lo sviluppo del linguaggio e ne ottimizza le prestazioni
• Scripting Layer for Android (SL4A) per il sistema operativo Android che include anche l’interprete Python 2.6.2.
Corso Pyhton su richiesta LaraMind
Attenzione, LaraMind è sì la scuola in Italia Laravel e Vue.js, ma non è che disdegnamo gli altri linguaggi web!
Richiedi un corso su misura, ideato e creato apposta per te dedicato a Python. Puoi scegliere fra: un corso Python a Milano, un corso Pyhton da remoto oppure un corso Python presso la tua azienda!
Scegli LaraMind, la formazione IT di livello avanzato è dinnanzi al tuo naso!
scrivici a amministrazione@laramind.com