Indice dei pacchetti

Quick Links (3.10.0)

Python - sito ufficiale della comunità italiana

Python è un linguaggio di programmazione dinamico orientato agli oggetti utilizzabile per molti tipi di sviluppo software. Offre un forte supporto all'integrazione con altri linguaggi e programmi, è fornito di una estesa libreria standard e può essere imparato in pochi giorni. Molti programmatori Python possono confermare un sostanziale aumento di produttività e ritengono che il linguaggio incoraggi allo sviluppo di codice di qualità e manutenibilità superiori.

Python gira su Windows, Linux/Unix, Mac OS X, OS/2, Amiga, palmari Palm e cellulari Nokia; è stato anche portato sulle macchine virtuali Java e .NET.

Python è distribuito con licenza Open-Source approvata dalla OSI: il suo utilizzo è gratuito e libero anche per prodotti commerciali.

Leggi altre informazioni o prova Python ora!

Cinque buoni motivi per scegliere Python

Di linguaggi di programmazione ne esistono dozzilioni, ma ovviamente il nostro preferito è Python e visto che siete qui, beh vedo già il vostro sopracciglio inarcuarsi. Prima che i miei sette secondi di attenzione svaniscano, vi elencherò sinteticamente quali sono i motivi che vi dovrebbero convincere a scegliere Python in mezzo ad una miriade di linguaggi diversi. Siente ancora con me? Beh iniziamo...

Facile da imparare
La sintassi e la struttura del linguaggio sono semplici da imparare, specie se confrontate con altri linguaggi di cui non farò nomi. Specie per chi si avvicina per la prima volta alla programmazione, troverà la sintassi da apprendere semplice e il dover usare l'indentazione del codice, piccolo scoglio iniziale, aiuterà a mantenere puliti i propri script, cosa sempre buona e giusta.

Funziona su molte piattaforme
Python è multipiattaforma, gira senza grossi problemi su principali sistemi operativi: GNU/Linux (dove è praticamente sempre incluso), MacOS, Windows e Unix. Uno script pensato su una determinata piattaforma, a patto di non usare librerie o funzionalità non standard, potrà girare su una delle altre piattaforme con poco o addirittura nessuna fatica.

La versatilità è il suo forte
Python è un linguaggio ad ampio ventaglio d'utilizzo. Direttamente scrivendo codice Python (nativo) o usando librerie/framework, coprirà svariati ambiti che vanno dallo sviluppo web al machine learning, passando per GUI ed applicazioni server. Qui il limite è la vostra fantasia.

Batterie incluse
Una delle forze di Python è quella di avere una nutritissima quantità di librerie e framework, che come spiegato al punto prima permettono di utilizzarla in ogni ambito. Ma il linguaggio viene fornito con quelle che scherzosamente vengono definite le batterei incluse, cioè tutti quegli strumenti già inclusi nel linguaggio che permettono di svolgere attività, come l'accesso ai database, operazioni di scraping, lettura e scrittura di file (esempio i Json), la creazione di interfacce grafiche, l'accesso al sistema operativo per operazioni su file e cartelle, ed altre svariate decine di specifiche applicazioni. Una bella forza non trovate?

La popolarità e la ricerca di personale
Se non siete ancora corsi a studiare il linguaggio con le spire, sappiate che Python è il linguaggio maggiormente in crescita negli ultimi anni, leggetevi questa news per approfondire. Oltre ad avere una vasta comunità che potrà aiutarvi nell'apprendimento, c'è anche grande richiesta in ambito lavorativo di programmatori in Python, o anche esperti in specifiche librerie. L'apprendimento di Python vi permetterà di aprire nuove possibilità lavorative e la mente, cose che non fanno mai male.

Che aspettate, siete nel posto giusto per cominciare con l'apprendimento del più affascinante linguaggio che possiate incontrare... perlomeno su questo sito.
2021-01-28 01:24:37.855915

Python una scelta sensata

Con un panorama ricco di linguaggi di programmazione, gli sviluppatori si trovano spesso difronte al dilemma della scelta, su cosa puntare la proprie attenzioni e concentrare i propri sforzi, anche per avere maggiori possibilità in ambito lavorativo?

Prova a darci una risposta O'Reilly indicando quali linguaggi suscitano i maggiore interesse, per maggiori approfondimenti leggete il report "Where Programming, Ops, AI, and the Cloud are Headed in 2021". All'interno del documento viene specificato come i dati esposti siano il frutto di indagini che fanno riferimento all'insegnamento online, anche dei partner, delle pubblicazioni ed anche in questo anche dei partner, degli eventi live, come corsi e sessioni di studio.

Ne viene fuori un quadro molto lusinghiero per Python, risultando al primo posto come linguaggio da voler imparare sia per coloro che già conoscono altri linguaggi che da chi si avvicina al mondo della programmazione, con un interesse in aumento del 27% rispetto allo scorso anno. Un gioco chiave lo hanno ovviamente gli aspetti legati al machine learning (ML), dove Python eccelle ed ha molte librerie dedicate all'argomento. Non è in caso se la libreria con il maggior incremento di impression sia proprio scikit-learn (+11%), forse è inutile aggiungere che si tratta di una libreria operante nel campo del ML.

Troverete nel report altri interessantissimi argomenti, potrete scoprire quali linguaggi sono in forte ascesa oltre Python, allarme spoiler Rust (anche se i dati sono drogati da una base l'anno prima di questa raccolta molto piccola), oppure capire come la popolarità di piattaforme low-code stia salendo.

Buona lettura ed allo stesso tempo buono studio se siete uno dei nuovi arrivati nel magico mondo di Python.

2021-01-27 15:10:04.055853

Traduciamo la documentazione di Python!

La comunità di Python.it lancia un nuovo progetto per la traduzione italiana integrale della documentazione ufficiale di Python. Mettere a disposizione risorse in Italiano, liberamente accessibili, rivolte soprattutto ai principianti, è fondamentale per diffondere la conoscenza di Python e la cultura della programmazione nel nostro Paese. La documentazione ufficiale è da sempre uno dei punti di forza di Python: completa, chiara, sintetica, aggiornata.

Per questo crediamo molto in questo progetto di traduzione e invitiamo tutti a collaborare! Abbiamo predisposto una repository di lavoro su GitHub per coordinare le operazioni: quando avremo un numero sufficiente di documenti tradotti, pubblicheremo il lavoro (a un indirizzo web ancora da definire).

Se volete contribuire in qualità di traduttori, per prima cosa andate su https://github.com/ricpol/pydoc-it : qui troverete tutte le informazioni necessarie.

Se volete approfondire, discutere e fare proposte su questo progetto, potete iscrivervi alla nostra apposita mailing list.

Il vostro contributo è indispensabile alla riuscita del progetto! Grazie in anticipo a tutti quelli che vorranno collaborare!
2020-10-20 17:06:50.424300

Versione 2.7, è davvero finita

Vi dico un segreto che tutti sanno... ah tecnicamente non è un segreto quindi. Vabbé ve lo dico lo stesso: sono passate alcune settimane dalla fine del supporto ufficiale alla versione 2 del linguaggio, di fatto era stata indicata come il 1° gennaio del 2020 la data di stop, da li in poi non si sarebbe più dovuto parlare al presente di quella versione, ma solo davanti alla vostra bevanda preferita ricordando i tempi che furono.

Nata nell'estate del 2010, la versione 2.7 ci ha tenuto compagnia per tanto tempo, ma la vita è crudele e tutte le cose belle devono prima o poi finire. Di fatto, che vi piaccia o meno, è obbligatorio, anzi meglio un preciso dovere di tutti i programmatori Python, salutare il caro vecchio Python 2. Se da una parte è vero che Python.org ha rilasciato il 20 aprile una nuova versione del ramo 2.7 (la 2.7.18 per l'esattezza), siamo davanti all'ultimo avviso, al quale non ne seguiranno più, questo è stato l'ultimo rilascio (di sempre). Si tratta del commiato, del saluto finale, la versione da impagliare e riporre sopra il caminetto.

Se per i nuovi sviluppatori non ci saranno grosse difficoltà perché inizieranno con la nuova versione (vero?!?), lo sforzo maggiore sarà richiesto ai veterani del linguaggio, quelli che nel corso degli anni hanno sviluppato con quella specifica versione del linguaggio. Sapete meglio di me che la maggior parte delle librerie, vitali per l'utilizzo di Python, sono passate alla versione 3, tranne qualche eccezione che nei grossi numeri possiamo ignorare, ed anche se tutti noi sappiamo che per svariati motivi ci saranno comunque versioni di script che gireranno con la versione 2.7 ancora per taaaaaaaaanto tempo, il passaggio verso la versione 3 ormai dovrebbe essere qualcosa di consolidato. Il countdown che portava alla "morte" della versione 2.7 è partito da anni, ben cinque, non è che ci siamo svegliati una mattina ed abbiamo trovato d'ufficio la versione 3.x e tanti saluti. Questo passaggio è stato fatto/suggerito in maniera del tutto graduale, ma certo non viviamo tra bastoncini di zucchero e cascate di cioccolato al latte, sappiamo anzi che sono state spese tante lacrime per effettuare questa transizione.

Ok, ci sarebbero dei distingui da fare per essere trasparenti al massimo. PyPy ha scelto di supportare la versione 2 per... sempre e visto che si tratta di software open source, la comunità potrebbe, con propri sforzi, rilasciare versioni aggiornate almeno dal punto di vista della sicurezza, se non delle nuove features. Ma ancora una volta, stiamo cercando di rianimare un qualcosa che è destinato comunque alla dismissione? Eeeeh, la sensazione è quella non neghiamolo, dobbiamo pensare seriamente alla versione 3 del linguaggio come l'unica disponibile ed utilizzabile, anche se potreste alzare il dito e sostenere una tesi contraria. Fatelo per il vostro bene.

Quindi amici è giunto il momento, salutiamo il vecchio Python 2 e... lunga vita a Python 3+.

2020-05-01 18:22:00.484761

Ambiti di utilizzo di Python

Ogni programmatore Python che si rispetti, arriva ad un punto del suo percorso di apprendimento durante il quale si farà delle domande sull'utilizzo del proprio linguaggio preferito e su come i propri colleghi lo utilizzano. Ma anziché andare a chiedere porta a porta nel vostro quartiere se qualcuno utilizza o meno Python, grazie al lavoro della Python Software Foundation insieme a JetBrains, abbiamo i dati del 2018 a nostra disposizione.

Prima di tutto un'importante disclaimer: ci tengo a dirvi che qui evidenzierò solo una piccola parte di quello che è contenuto nell'articolo completo, che vi invito caldamente a leggere per avere un quadro più preciso.


Se il fatto che l'84% di coloro che hanno risposto al sondaggio utilizzano Python come linguaggio primario (beh, grazie...), sorprende invece constatare come il 51% affianchino Javascript come "altro linguaggio". In realtà solo un utente disattento, come lo sono stato io, poteva pensare che HTML/CSS o Bash fossero i compagni preferiti, perché di fatto anche nel 2017 la situazione era molto simile all'attuale.

Ma scopriamo qual'è l'ambito di utilizzo in cui Python viene usato nella maggior parte dei casi.




Ed eccoci arrivati subito alla vera prima grossa sorpresa. Il Data analysis supera il Web development come ambito di utilizzo preferito degli sviluppatori Python. Certo se dovessimo scegliere un solo ambito questo sarebbe ancora il Web development come aspetto primario unico, ma è anche vero che Data analysis e Machine Learning, due degli aspetti dello sviluppo in ambito scientifico hanno insieme sorpassato lo sviluppo web, segno inequivocabile dei tempi che stanno cambiando sotto i nostro occhi.

Per quanto riguarda l'adozione di Python, ecco qui c'è un incremento di nove punti di Python 3:



Per quanto riguarda invece la specifica versione del linguaggio utilizzato, eccovi il dettaglio:



Interessante a mio avviso vedere anche quale versione viene usata nei tre principali ambiti di utilizzo:



Ma sediamoci e respiriamo, il re è morto, lunga vita al re. In ambito web il framework da sempre più ultizzato è sempre stato Django, col suo enorme bacino di utenza e la sua vasta comunità. Beh, usiamo il verbo al passato, perché Flask risulta oggi il framework web più usato, prevalendo 47% vs 45% di Django. Certo, si tratta di risposte a scelta multipla, ma è significativo constatare questo aspetto, con un Flask capace di prendersi quindici punti percentuale rispetto al 2017.

NumPy e Requests sono i capofila dei framework scientifici e delle librerie/framework generici, diciamo che qui il grado di sorpresa è rasente lo zero assoluto.

Ma con quale sistema operativo si sviluppa in Python? Beh forse per qualcuno sarà un sorpresa, per altri (come me) una semplice conferma.




E chiudiamo con un aspetto dello sviluppo che interessa molti di voi visto che ci viene rivolto spesso il quesito su quale sia il miglior IDE/Editor per scrivere codice. Se una risposta è davvero difficile da dare, almeno possiamo dirvi che cosa i sondaggisti utilizzano:






Dobbiamo notare come il lavoro fatto su VS Code stia pagando dividendi ed a fine anno qui si che ci potrebbe essere una bella novità.


Anche se abbiamo solo grattato la superficie di questo sondaggio, che vi invito ancora una volta a leggere per interno, sembra chiaro che il grande protagonista è e sarà lo sviluppo delle discipline del Data Science, sempre più presente nella vita di ognuno di noi. Che siate sviluppatori web o novelli Marvin Minsky, Python è sicuramente il vostro più fedele alleato.
2019-03-14 16:28:34.139371