Come funziona Python

May 28 2020
Python è un linguaggio di programmazione che anche i principianti possono imparare facilmente perché utilizza una sintassi simile all'inglese. E ha un'ampia varietà di applicazioni.
Python è un popolare linguaggio di programmazione utilizzato per lo sviluppo di software e web. Maskot / Getty Images

Se hai appena iniziato a programmare computer e altri dispositivi, è probabile che tu stia cercando di capire quale linguaggio di programmazione è il migliore da imparare per primo. Ci sono molti articoli su Internet su quale linguaggio di programmazione dovresti imparare - quali sono i migliori per quale piattaforma, quali sono i più facili da imparare, quali sono i più propensi ad aiutarti a trovare un lavoro per guadagnare un sacco di soldi. Se hai passato al setaccio tutte queste opinioni, è probabile che tu abbia sentito parlare di Python.

Probabilmente non c'è una sola risposta giusta alla tua domanda. Imparare qualsiasi linguaggio di programmazione ti insegnerà anche a pensare come un programmatore. Tutti i linguaggi di programmazione hanno i loro punti di forza e di debolezza. Se stai cercando un linguaggio che funzioni in una vasta gamma di applicazioni, o semplicemente vuoi immergerti nelle acque di codifica, Python potrebbe essere buono da provare.

Python ha la reputazione di essere facile da capire per i nuovi programmatori. Può essere utilizzato per scrivere programmi per computer o applicazioni per il web. Se vuoi creare la prossima grande app mobile, tuttavia, Python non è una scelta popolare. Un sondaggio del 2019 sugli utenti di Python ha rilevato che gli usi più popolari erano per lo sviluppo web e l'analisi dei dati. Solo il 6% circa degli intervistati lo ha utilizzato per lo sviluppo di giochi o app.

Esistono molte applicazioni commerciali per la programmazione Python, ma il linguaggio ha anche preso piede nei circoli accademici, specialmente tra quelli che lavorano con grandi quantità di dati. È utile anche per gli hobbisti.

Python è la creazione di Guido van Rossum , che aveva lavorato con un linguaggio chiamato ABC presso il suo allora datore di lavoro, il Centrum Wiskunde & Informatica (CWI), l'istituto nazionale di ricerca in matematica e informatica nei Paesi Bassi. Anche se gli piacevano alcuni aspetti dell'ABC, era frustrato da quanto fosse difficile estendere il linguaggio.

Durante le vacanze di Natale del 1989, van Rossum decise di provare a creare la sua lingua. Poco più di un anno dopo, nel febbraio 1991, ha caricato la prima versione della sua creazione su USENET. Aveva anche letto le sceneggiature degli episodi di "Monty Python's Flying Circus", della famosa compagnia comica britannica. Alla ricerca di un nome che fosse "breve, unico e leggermente misterioso", ha scelto di chiamarlo Python. Devi essere un fan dello spettacolo se vuoi programmare Python? Nelle parole della Python Software Foundation , "No, ma aiuta. :)".

Anche se ora si considera in pensione, van Rossum detiene il titolo di "dittatore benevolo a vita" di Python, un titolo che detiene dal 1995 . In effetti, da allora un certo numero di creatori open-source - che hanno l'ultima parola sulle modifiche ai loro progetti - hanno anche ricevuto quel titolo dalle loro comunità di sviluppo.

Python è open source, il che significa che è gratuito da usare e distribuire, secondo la definizione ufficiale creata dall'Open Source Initiative. Puoi anche scaricare una copia del codice sorgente, se lo desideri.

A partire da maggio 2020, il PopularitY of Programming Index (PYPL), che classifica i linguaggi di programmazione in base alla frequenza con cui le persone cercano tutorial su di essi, elenca Python al primo posto. Il sito, che ha lo scopo di aiutare i programmatori in erba a scegliere un linguaggio di programmazione con cui iniziare, cambia spesso, ma l'interesse per Python è cresciuto maggiormente tra il 2015 e il 2020.

Robert Thorstad, membro di scienza dei dati presso Insight Data Science, ritiene che la facilità d'uso sia una delle ragioni principali dell'ascesa di Python. "La facilità d'uso è una filosofia di progettazione esplicita nel linguaggio Python", afferma. L'antica pratica di scrivere un breve programma che stampa "Hello, world" sullo schermo del computer potrebbe richiedere molte righe a un programmatore Java , ma in Python può essere eseguita semplicemente digitando:

print ("Hello, World!")

Questa semplicità, ha detto Thorstad, fa sembrare Python più amichevole per i programmatori inesperti. Molti hanno elogiato il codice Python come facile da leggere per gli umani . Laddove altri linguaggi di programmazione utilizzano caratteri come il punto e virgola per mostrare la fine di un comando, Python utilizza una nuova riga. Piuttosto che usare le parentesi graffe che potrebbero racchiudere una funzione in altri linguaggi, Python usa il rientro.

Un esempio di codice Python.

Utilizza per la programmazione Python

Python è un linguaggio versatile e i suoi sviluppatori lo usano spesso sia per motivi di lavoro che personali. Secondo uno studio del 2018 della non profit Python Software Foundation e JetBrains, una società a scopo di lucro che produce strumenti per sviluppatori di software, le persone utilizzano il linguaggio per creare applicazioni per il web, scrivere giochi e applicazioni mobili, amministrazione di sistema, istruzione, machine learning e analisi dei dati.

Python è uno dei tanti linguaggi di programmazione orientati agli oggetti. Gli oggetti sono sezioni di codice digitato che acquisiscono lo stato di determinati dati. Questi oggetti possono essere utilizzati successivamente da altro codice senza dover riscrivere tutto di nuovo. Le informazioni codificate nell'oggetto influiscono sul codice che lo chiama, rendendo l'oggetto uno strumento di programmazione versatile.

Un altro vantaggio di Python è che le applicazioni scritte con il linguaggio funzionano su molte piattaforme, inclusi computer Windows, Macintosh e Linux. Python è un linguaggio interpretato, non un linguaggio compilato. Ciò significa che, a differenza delle applicazioni scritte in linguaggi come C, COBOL o Assembler, il codice scritto in Python deve essere sottoposto a un processo di interpretazione da parte del computer. È più facile per gli esseri umani scrivere e leggere, ma costringere il computer a interpretare il codice ogni volta lo rallenta. La velocità è spesso citata come uno svantaggio di Python.

Thorstad, tuttavia, crede che la lingua abbia un brutto colpo. "Python ha una serie di librerie che stanno rapidamente colmando questa lacuna." Indica librerie come NumPy e TensorFlow e compilatori come Numba e Cython, tutti strumenti open source che aggiungono funzionalità al linguaggio di programmazione e ne migliorano la velocità.

Python per la scienza dei dati

Sebbene Python possa essere utilizzato per molti diversi tipi di applicazioni in molti settori, il linguaggio è diventato particolarmente popolare per i data scientist. La comunità Python, sottolinea Thorstad, è molto numerosa e molto attiva. "Esiste un gran numero di librerie potenti e davvero utili per eseguire attività comuni di data science in Python", afferma. Tra gli strumenti sviluppati dalla comunità figurano:

  • Strumenti di apprendimento automatico (TensorFlow, PyTorch, Theano, Gensim)
  • Librerie numeriche (NumPy)
  • Biblioteche statistiche (statsmodels, SciPy)
  • Librerie di plottaggio (Matplotlib, Seaborn)

Nella seconda edizione del suo libro " Python for Data Analysis ", Wes McKinney, direttore di Ursa Labs e creatore del framework Pandas, concorda con Thorstad sul fatto che le librerie ei framework creati dalla comunità aiutano Python a competere con altre alternative di data science come come R, MATLAB e altri.

"In combinazione con la forza complessiva di Python per l'ingegneria del software per scopi generici, è un'opzione eccellente come linguaggio principale per la creazione di applicazioni di dati", scrive.

La comunità mondiale di Python organizza molte conferenze ogni anno in cui programmatori di tutti i tipi e livelli di abilità possono riunirsi per l'apprendimento e il networking. Tra questi c'è PyCon , che si svolge più volte all'anno in più sedi in tutto il mondo. La Python Software Foundation mantiene un elenco di eventi sul suo sito.

Con una forte comunità che lavora insieme per aiutarsi a vicenda e creare strumenti che migliorano la capacità di Python di gestire grandi quantità di dati, le persone interessate alla programmazione della scienza dei dati possono considerare Python una scommessa sicura. Sembra che il piano di Guido van Rossum per un linguaggio di programmazione estensibile funzioni bene, e anche di più.

Introduzione a Python

Se quello che hai imparato su Python ti interessa e sei pronto per saltare e iniziare a programmare, ci sono molte risorse disponibili per aiutarti. "Il modo migliore per imparare qualsiasi linguaggio di programmazione è farlo", afferma Thorstad. "Consiglierei alle persone di scegliere un progetto di cui sono appassionati e iniziare a costruirlo".

Se non hai già Python preinstallato sul tuo computer, puoi scaricarlo gratuitamente dal sito Python . Thorstad consiglia la distribuzione gratuita Anaconda, che include molte librerie di programmazione popolari, o l'ambiente di sviluppo integrato Spyder, che presenta un'interfaccia grafica. Se non vuoi (o non puoi) installare il software sul computer, Thorstad consiglia anche uno strumento gratuito, Google Colaboratory , che ti consente di scrivere ed eseguire codice Python nel tuo browser web.

In definitiva, l'unico software di cui hai veramente bisogno per scrivere codice Python è un editor di testo e ci sono ottime possibilità che tu ne abbia almeno uno installato sul tuo computer.

La tua libreria e libreria locale probabilmente hanno guide di programmazione che possono aiutarti a iniziare con Python. Le scuole e le università offrono lezioni nella lingua. Ci sono anche corsi online a pagamento che puoi seguire, ma non devi spendere una fortuna per imparare. Ci sono anche buone opzioni gratuite per i principianti disponibili online:

  • Python for Beginners, dalla Python Software Foundation
  • Classe Python di Google
  • Introduzione all'informatica e alla programmazione in Python - Massachusetts Institute of Technology (MIT)
  • Introduzione a Python - Microsoft
  • Python for Everybody Specialization - University of Michigan (via Coursera)
  • Tutorial su Python - w3schools

Ovviamente dovresti scegliere il linguaggio di programmazione più adatto al tuo progetto, ma se sei interessato a un codice di facile lettura che può essere utilizzato per tutti i tipi di progetti personali e aziendali, imparare Python è un ottimo punto di partenza.

Ciao mondo!

Se hai mai seguito un corso di programmazione o hai guardato i primi esercizi in un libro di programmazione, potresti aver notato che stampando "Hello, World!" è una prima attività comune per i nuovi programmatori. Per questo, puoi ringraziare Brian Kernighan , che lo ha incluso in un manuale che stava scrivendo per il linguaggio di programmazione B nel 1972. Kernighan è stato ispirato da un'illustrazione che aveva visto di un pulcino che diceva la frase mentre schiudeva da un uovo. Il suo lavoro ha ispirato molti altri a fare lo stesso e ora l'esercizio fa parte della tradizione della programmazione.