Archivi mensili: Novembre 2021

MODULI E PACKAGE IN PYTHON

MODULI Nei moduli e package in Python un modulo rappresenta un’organizzazione di codice. E' un programma che contiene la definizione di dati, funzioni e classi che diventano i suoi attributi. Un modulo forma un namespace che occupa una posizione intermedia nella gerarchia dei namespace. I namespace li abbiamo già trattati. Viene fatta una distinzione tra i moduli e gli script, uno script rappresenta il flusso principale del programma, i moduli li possiamo considerare come delle librerie di oggetti, contenitori di funzioni e classi principalmente importati tramite l’istruzione import negli script o in altri moduli. IMPORTAZIONE L’importazione [...]

Di |2024-05-24T08:11:51+02:001 Novembre 2021|0 Commenti

ARGOMENTI AVANZATI IN PYTHON

EREDITARIETA’ MULTIPLA Nell'affrontare gli argomenti avanzati in Python direi di parlare subito di ereditarietà multipla, una caratteristica molto importante. Quando abbiamo parlato di ereditarietà, abbiamo visto come si può derivare una classe base da una superclasse. Ora affronteremo l’argomento ereditarietà multipla supportata pienamente in Python, che permette ad una classe base di ereditare da due o più classi. La classe derivata eredita dalle due superclassi BClass e CClass. In esse sono stati definiti due attributi di tipo intero. Entrambi gli attributi vengono ereditati da AClass. Ovviamente anche i metodi delle superclassi vengono ereditati, vediamo un esempio. [...]

Di |2024-08-15T04:58:54+02:005 Novembre 2021|0 Commenti

CLASSI DI DATI IN PYTHON

Prima di affrontare l'argomento "Le Data Classes in Python" occorre fare una piccola premessa su quelle che sono le Type Annotations. TYPE ANNOTATIONS Le annotazioni sono funzionalità di Python che suggeriscono agli sviluppatori i tipi di dati delle variabili o dei parametri di funzione e il tipo restituito. Esistono principalmente due tipi di annotazioni in Python: annotazioni di funzioni e annotazioni di variabili. La sintassi per l'annotazione della funzione è mostrata di seguito: def func(a: <expression>, b: <expression>) -> <expression>:     pass Esempi di annotazioni di funzioni e variabili vengono mostrate nel codice sotto riportato. E' importante sottolineare che [...]

Di |2024-08-14T03:19:47+02:006 Novembre 2021|0 Commenti

NOVITA’ INTRODOTTE IN PYTHON 3.8 E 3.9

ASSIGNEMENT EXPRESSION Iniziamo ad approfondire subito l'argomento "NOVITA' INTRODOTTE IN PYTHON 3.8 E 3.9" partendo da una funzionalità introdotta in Python 3.8. E' stato introdotto un nuovo operatore, si chiama Walrus Operator ed è un operatore di assegnamento. Il suo simbolo è: :=  Prima di parlare di questo nuovo operatore facciamo un piccolo ripasso sulle espressioni. Un’espressione è un tipo particolare di Statement valutata a runtime per produrre un valore. Le espressioni più semplici sono i literal e gli identificatori. Si possono creare altre espressioni usando gli operatori che Python ci mette a disposizione, inoltre l’invocazione [...]

Di |2024-08-14T15:36:58+02:009 Novembre 2021|0 Commenti

NOVITA’ INTRODOTTE IN PYTHON 3.10

INSTALLAZIONE DI PYTHON 3.10 Prima di affrontare l'argomento "pattern matching" parliamo dell'installazione di Python 3.10. Scaricare il programma dal sito python.org e installatelo o nel folder che vi viene proposto automaticamente, oppure decidete voi una diversa directory di installazione. Una volta installato il programma configurate la variabile ambiente di sistema Path impostando il percorso della directory di installazione di Python 3.10. Riavviate il computer e tutto dovrebbe essere ok. Aprite una schell di Python per vedere se la versione corrente è la 3.10. PATTERN MATCHING Il pattern matching è la principale caratteristica aggiunta in Python 3.10. Il significato in termini [...]

Di |2024-05-24T08:11:52+02:0010 Novembre 2021|0 Commenti

PYTHON E RABBITMQ

ARCHITETTURE CLIENT SERVER Prima di affrontare l'argomento "Python e RabbitMQ" parliamo un po' di architetture introducendo il modello client-server e le architetture distribuite. IL CLIENT Il software client in genere è di limitata complessità, limitandosi normalmente ad operare come interfaccia verso il server. In generale nel campo informatico il termine client indica una componente che accede ai servizi o alle risorse di un'altra componente, detta server. In questo contesto si può quindi parlare di client riferendosi all'hardware o al software. Un computer collegato ad un server tramite rete locale o geografica, ed al quale richiede uno o più servizi, [...]

Di |2024-05-24T08:11:52+02:0013 Novembre 2021|0 Commenti

PYTHON E MONGODB

PYTHON E MONGODB Iniziamo a parlare di "Python e MongoDB". Il modello tradizionale per rappresentare i dati in un database è il modello relazionale. Noi in questo articolo prenderemo in esempio un nuovo modello di rappresentazione dei dati che non usa il modello relazionale e il linguaggio SQL per interrogarlo ma un approccio totalmente diverso basato su MongoDB. JSON JSON (Javascript Object Notation) è un formato di rappresentazione e interscambio dati leggero. È basato su un sottoinsieme del linguaggio di programmazione javascript. JSON è costruito a partire da due strutture di base, praticamente presenti in tutti [...]

Di |2024-05-24T08:11:52+02:0017 Novembre 2021|0 Commenti
Torna in cima