La guida definitiva alla blockchain di Python: parte 1

Blockchain Python / Secondo python.org, “Python è un linguaggio di programmazione di alto livello interpretato, orientato agli oggetti con semantica dinamica. Le sue strutture di dati incorporate di alto livello, combinate con la digitazione dinamica e l’associazione dinamica, lo rendono molto attraente per lo sviluppo rapido di applicazioni, nonché per l’uso come linguaggio di scripting o di colla per collegare i componenti esistenti.

La guida definitiva a Python e Blockchain: parte 1

La guida definitiva alla blockchain di Python: parte 1

Python è uno dei linguaggi più popolari e potenti in circolazione. Non solo è estremamente adatto ai principianti, ma ha anche trovato applicazioni in molte aree diverse. In effetti, secondo un sondaggio di IEEE, Python sembra essere il linguaggio più popolare del 2017.

La guida definitiva a Python e Blockchain: parte 1 blockchain Python

Credito immagine: Extreme Tech

Origini di Python

Guido van Rossum, un programmatore olandese, ha creato Python nel 1991. Python si basa su una filosofia semplice: semplicità e minimalismo. Uno dei modi più notevoli in cui hanno incorporato la semplicità nel loro linguaggio è l’uso di spazi bianchi per indicare blocchi di codice invece di parentesi graffe o parole chiave.

Vediamo cosa significa controllando un semplice programma “ciao mondo”.

print (“Hello, world!”)

Sì, questo è tutto!

Il nome della lingua deriva dai famosi comici britannici Monty Python. La filosofia di base del linguaggio è stata riassunta nel documento “The Zen of Python”:

  • Bello è meglio che brutto
  • Esplicito è meglio che implicito
  • Semplice è meglio che complesso
  • Complesso è meglio che complicato
  • La leggibilità conta

Fondamentalmente, Python è un file orientato agli oggetti, alto livello linguaggio di programmazione con estensione ampia libreria. Vediamo cosa significa ciascuno di questi termini.

Programmazione orientata agli oggetti

è un linguaggio di programmazione orientata agli oggetti (OOP) in contrasto con uno orientato ai processi. Linguaggi orientati al processo come il C utilizzavano programmi in cui un elenco di istruzioni che agivano sulla memoria.

Gli OOP, d’altra parte, consentono la creazione di un modello chiamato “classe” da cui si possono generare oggetti che possono interagire tra loro. Questi oggetti eseguono il programma.

Ora, ci sono quattro pilastri per gli OOP:

  • Incapsulamento
  • Astrazione
  • Polimorfismo
  • Ereditarietà

La guida definitiva a Python e Blockchain: parte 1 blockchain Python

Incapsulamento

L’incapsulamento è l’idea di racchiudere dati e funzioni in un’unica unità. L’idea è di nascondere lo stato iniziale degli oggetti e di legare tutto in un solido pacchetto.

Astrazione

Astrazione significa che un utente può utilizzare il programma senza entrare nelle complicazioni dietro di esso.

Pensa a una macchina.

Quando guidi un’auto, tutto ciò che ti interessa è mettere la chiave e manovrare il veicolo in modo da non colpire nient’altro. Non ti interessa come funzionano i motori e come l’accensione brucia il tuo carburante.

Eredità

L’ereditarietà è una delle proprietà più importanti degli OOP.

L’ereditarietà consente a un oggetto o una classe di basarsi su un altro oggetto o su una classe e di conservare parte della sua implementazione. Nella maggior parte dei linguaggi orientati agli oggetti basati su classi, un oggetto creato attraverso l’ereditarietà acquisisce la maggior parte delle proprietà e dei comportamenti dell’oggetto genitore

Polimorfismo

Il polimorfismo è la proprietà per cui un operatore nella lingua può avere più di una proprietà. L’esempio più famoso di questo è “+”. Non solo viene utilizzato come operatore di addizione matematica, ma può anche essere utilizzato per combinare due stringhe in una. Questa si chiama concatenazione.

Per esempio. se aggiungiamo due stringhe “Block” + “Geeks” il risultato sarà “BlockGeeks”.

Basso livello vs alto livello

Il livello del programma è determinato dal suo grado di interazione con il computer.

Lingue di basso livello

I linguaggi di basso livello sono linguaggi dipendenti dalla macchina che interagiscono direttamente con il computer. Ricorda che i computer possono comprendere solo le istruzioni sotto forma di 0 e 1. Questo è il motivo per cui questi linguaggi utilizzano questi segnali tramite la notazione binaria per interagire direttamente con il computer.

È proprio per questo motivo che le lingue di basso livello sono anche estremamente difficili da imparare per i principianti, motivo per cui non sono così popolari come le lingue di alto livello.

Assembly Language è un esempio di linguaggio di basso livello.

Lingue di alto livello

D’altra parte, i linguaggi di alto livello sono i linguaggi di programmazione indipendenti dalla macchina, che sono facili da scrivere, leggere, modificare e capire.

Quindi, anche se potrebbero non interagire direttamente con la macchina e necessitano di passare attraverso un compilatore, sono estremamente versatili e adatti ai principianti.

Esempi di linguaggi di alto livello sono Python, Java, .Net, Pascal, COBOL, C ++, C, C # ecc.

La libreria Python

Uno dei maggiori punti di forza di Python è la sua vastissima libreria. La libreria contiene moduli integrati (scritti in C) che forniscono accesso a funzionalità di sistema come I / O di file che altrimenti sarebbero inaccessibili ai programmatori Python, così come moduli scritti in Python che forniscono soluzioni standardizzate per molti problemi che si verificano in programmazione quotidiana.

Per assicurarsi che anche le applicazioni per Internet siano ben rappresentate, nella libreria sono supportati molti protocolli di formati standard come MIME e HTTP. Include moduli per la creazione di interfacce utente grafiche, connessione a database relazionali, generazione di numeri pseudocasuali, aritmetica con decimali di precisione arbitraria, manipolazione di espressioni regolari e test di unità.

A partire da marzo 2018, il Python Package Index (PyPI), il repository ufficiale per il software Python di terze parti, contiene oltre 130.000 pacchetti con un’ampia gamma di funzionalità, tra cui:

  • Interfacce utente grafiche
  • Framework web
  • Multimedia
  • Banche dati
  • Networking
  • Framework di test
  • Automazione
  • Web scraping [97]
  • Documentazione
  • Amministrazione di sistema
  • Informatica scientifica
  • Elaborazione del testo
  • Elaborazione delle immagini

Cosa ti serve per iniziare

  • In primo luogo, dovrai andare a python.org e scarica l’ultima versione
  • In secondo luogo, dovrai scaricare Visual Studio Code, cosa che puoi fare giusto qui.

Prima di continuare, configuriamo semplicemente il nostro Visual Studio.

Una volta terminata l’installazione, vedrai questa schermata.

La guida definitiva a Python e Blockchain: parte 1 blockchain Python

Ora vai su File ->Aperto

Dopodiché, devi creare una cartella. Chiamiamo questa cartella “Hello World”.

Una volta fatto, dovrai andare su Estensioni e installare “Python”.

Nota: L’ultima icona sulla barra degli strumenti a sinistra (la cosa di forma quadrata) è il pulsante Estensioni.

Bene, ora che è fatto, iniziamo con un po ‘di codifica!!

Nota: Prima di passare a Visual Studio Code, lavoreremo su “Terminal” per Mac e “Prompt dei comandi” per Windows

Iniziare le cose

La prima riga sul tuo terminale dovrebbe assomigliare a questa (stiamo usando un Mac air):

X’s-MacBook-Air: ~ Y $

Proprio accanto a quella riga scrivi “python”

X’s-MacBook-Air: ~ Y $ python

Dopo aver premuto Invio, vedrai questo:

Python 2.7.10 (predefinito, 17 agosto 2018, 17:41:52)

[GCC 4.2.1 compatibile con Apple LLVM 10.0.0 (clang-1000.0.42)] su darwin

Digitare “aiuto”, “copyright”, “crediti” o “licenza” per ulteriori informazioni.

>>>

Fondamentalmente, questo significa che ora sei dentro e puoi iniziare a scrivere codice.

Cominciamo con semplici operatori numerici.

La guida definitiva a Python e Blockchain: parte 1

Come puoi vedere, finora una faccenda piuttosto standard. Tutte le operazioni che abbiamo fatto finora seguono la formula REPL.

R = Leggi

E = Valuta

P = Stampa

L = Loop

2 + 2 è letto

Il calcolo del risultato è Valuta.

Stampa del risultato, ovvero 4 è Stampa

Loop significa fondamentalmente tornare indietro e ricominciare da capo.

Proviamo a stampare “Hello World”.

>>> print (“Hello World”)

Ciao mondo

Vedi, piuttosto semplice. Devi solo usare print () e inserire “Hello World” tra virgolette. Nella stessa riga successiva, verrà stampato. Inoltre, nota come non stiamo usando un punto e virgola per terminare le nostre istruzioni in python.

Tipi di dati in Python

Bene, ora parliamo dei tipi di dati. In Python, ci sono 4 tipi di dati di base:

  • Booleano
  • Numeri (interi e float)
  • Corda

Booleano

I valori booleani sono uno standard nei linguaggi di programmazione. Le variabili booleane possono accettare solo due valori, True e False. Sono davvero utili per la codifica orientata alle condizioni come if-else e loops.

Numeri

Come con tutti i linguaggi di programmazione, python utilizza sia tipi di dati interi che float. I numeri interi sono fondamentalmente numeri non decimali e i float sono numeri decimali.

Quindi, 3 è un numero intero mentre 3.4 è un numero float.

Prima di andare oltre, ci sono due funzioni interessanti che dovresti conoscere, float () e int ().

La funzione float () trasforma il suo parametro (i dati tra parentesi) in un numero float.

Quindi, float (5) diventa 5.0.

Allo stesso modo, int (4.6) diventa 4.

Si noti che il numero non viene arrotondato nel senso tradizionale. Elimina solo la parte decimale.

Bene, divertiamoci con queste funzioni.

Supponiamo di avere una variabile booleana: a = True

Se facciamo int (a), otterremo 1.

Ricorda che True = 1 e False = 0.

Allo stesso modo, float (a) ci darà 1.0.

Corda

Infine, abbiamo String.

Una stringa è un tipo di dati utilizzato nella programmazione, come un numero intero e un’unità in virgola mobile, ma viene utilizzata per rappresentare il testo anziché i numeri. È composto da un set di caratteri che può contenere anche spazi e numeri.

Sono dichiarati così:

a = “Nome”

Puoi utilizzare virgolette singole e doppie per contenere la stringa. Tuttavia, ricorda che non puoi usarli entrambi sulla stessa stringa, ad es. “Ciao” sarà un errore.

Inoltre, quando si utilizzano stringhe, fare attenzione agli apostrofi. Per esempio. “Sono uno scrittore” sarà un errore. Puoi correggerlo inserendo una barra rovesciata prima dell’apostrofo, in questo modo: “Sono uno scrittore”

Va bene, ricorda le funzioni int () e float (). Vediamo come interagiscono con la stringa.

Quindi, se n = “9” e vogliamo aggiungerlo con 1.

Possiamo semplicemente fare: int (n) + 1 per ottenere l’output 10.

Al contrario, se facciamo float (n), l’output sarà 9.0.

Ricorda, durante tutto questo tempo, “n” rimane ancora una variabile stringa. Stiamo semplicemente usando un’istanza della stringa per eseguire le nostre operazioni matematiche. Lascia che te lo mostriamo nel terminale.

Tuttavia, se n aveva un valore mobile come “4.5” e proviamo a utilizzare la funzione int (), avremo un errore. Ciò accade perché il contenuto della stringa stessa è una variabile in virgola mobile.

Divertiamoci ancora un po ‘con gli archi.

Ricorda che una delle proprietà della programmazione orientata agli oggetti è il polimorfismo.

Quindi, proviamo la concatenazione.

L ‘”*” può anche fare cose interessanti con le variabili stringa.

Come puoi vedere, abbiamo moltiplicato name per 10 e abbiamo ottenuto il valore di name 10 volte.

Operatori

Gli operatori sono strumenti che puoi usare per manipolare un particolare valore o operandi. I tre operatori più comuni che troverai in python sono:

  • Matematico
  • Booleano
  • Logico

Operatori matematici

La guida definitiva a Python e Blockchain: parte 1

Operatori booleani

Gli operatori booleani si occupano di valori e operandi e forniscono output booleani, ad esempio Vero o Falso

La guida definitiva a Python e Blockchain: parte 1 blockchain PythonLa guida definitiva a Python e Blockchain: parte 1

Operatori logici

L’operatore logico confronta due condizioni e fornisce un risultato booleano.

La guida definitiva a Python e Blockchain: parte 1

Funzioni

Le funzioni sono la spina dorsale della programmazione moderna. Finora, qualunque programmazione abbiamo fatto è piuttosto semplice. Tuttavia, i programmi possono avere centinaia di righe di codice che possono diventare piuttosto difficili da tenere traccia.

Questo è il motivo per cui utilizziamo programmi, che fondamentalmente agiscono come moduli in quel particolare programma.

Facciamo un esempio per capire il significato delle funzioni.

Supponiamo che tu stia scrivendo un enorme romanzo senza capitoli. Se hai già descritto qualcosa nel libro, è probabile che, se devi citarla di nuovo, dovrai ripetere alcuni passaggi.

Il problema con questo è che porta alla ridondanza, che è uno spreco di energia, denaro e tempo.

Ora, cosa succederebbe se segmentassimo effettivamente il libro in diversi capitoli. Apporta molta struttura e chiarezza all’intera presentazione del libro. Quindi, se vogliamo fare riferimento a qualcosa che abbiamo menzionato prima, possiamo semplicemente far sapere all’utente a quale numero di capitolo può fare riferimento.

In questa analogia, il libro è il programma e i capitoli sono le funzioni.

Quindi, come definisci esattamente una funzione in Python? Bene, diamo un’occhiata.

Per questi programmi, utilizzeremo Visual Studio Code.

Basta aprire il tuo VSC e la cartella che abbiamo creato in precedenza. Dopo averlo fatto, fai clic su questo pulsante per aprire un nuovo file:

La guida definitiva a Python e Blockchain: parte 1

Assegna un nome al file come preferisci, ma assicurati di terminarlo con “.py”. Chiameremo il nostro file “app.py”.

Ok, quindi proviamo la nostra prima funzione!

def saluto ():

   print (“Hello”)

salutare()

Come puoi vedere, iniziamo la definizione della funzione con la parola chiave “def”. Dopodiché, abbiamo il nome della funzione seguito dalle parentesi e dai due punti.

Dopodiché, a differenza di altri linguaggi, python non utilizza le parentesi graffe per definire il corpo della funzione. Invece, tutto ciò che devi fare è indentare un po ‘e aggiungere il corpo. VSC lo fa automaticamente per te.

Dopo la definizione della funzione, devi semplicemente chiamare la funzione digitando “greet ()”.

Ok, quindi dopo aver scritto il programma assicurati di salvarlo. Dopodiché, apriremo il terminale facendo clic qui:

La guida definitiva a Python e Blockchain: parte 1 blockchain Python

Quando apri il terminale, vedrai qualcosa del genere:

La guida definitiva a Python e Blockchain: parte 1

In questo momento basta digitare “nomefile python.py”.

In questo caso, il nome del nostro file è “app” quindi digiteremo, python app.py.

La guida definitiva a Python e Blockchain: parte 1

Nel momento in cui lo fai, come puoi vedere sopra, il programma stamperà “Hello”.

Ora, introduciamo alcuni argomenti nella nostra funzione.

Gli argomenti sono i parametri che entrano nella funzione. Quindi, torniamo alla nostra funzione di saluto e aggiungiamo alcuni elementi extra:

def saluto (first_name, last_name)

In questo caso, first_name e last_name sono gli argomenti che entrano in questa funzione. Quindi, quando chiami la funzione questa volta, devi passare anche i parametri, che saranno simili a questo:

salutare (“Lionel”, “Messi”)

L’intero programma ha questo aspetto:

La guida definitiva a Python e Blockchain: parte 1 blockchain Python

Quindi, quando esegui questo programma, l’output sarà:

La guida definitiva a Python e Blockchain: parte 1

Dichiarazioni condizionali

# 1 If-Elif-Else

Le istruzioni condizionali sono un punto fermo in tutti i linguaggi di programmazione e python lo esegue con le istruzioni if-elif-else. Elif è un’abbreviazione di “else-if”. La sintassi di solito è questa:

Se la condizione 1:

Dichiarazione 1

condizione elif 2:

Dichiarazione 2

altro

Dichiarazione 3

Dichiarazione 4

Allora, cosa sta succedendo qui?

  • Se la condizione 1 è corretta, l’istruzione 1 verrà eseguita e quindi il codice salterà all’istruzione 4 per eseguirla.
  • Se la condizione 2 è falsa, il codice passa alla condizione 2. Se la condizione 2 è corretta è corretta allora l’istruzione 2 viene eseguita, seguita dall’istruzione 4.
  • Se nessuna delle condizioni è corretta, l’istruzione 3 viene eseguita per impostazione predefinita seguita dall’istruzione 4.

Nel codice ipotetico che abbiamo fornito sopra, l’istruzione 4 non appartiene a nessuna delle condizioni, motivo per cui viene eseguita di default alla fine.

Ok, quindi ora controlliamo un semplice programma che utilizza solo se.

La guida definitiva a Python e Blockchain: parte 1

In questo programma, stiamo semplicemente controllando se il numero è inferiore a 6 o meno. Se lo è, stamperemo il risultato. Poiché la condizione è soddisfatta, il programma emette l’istruzione nel suo terminale.

La guida definitiva a Python e Blockchain: parte 1

Ok, ora portiamo questo ad un altro livello e portiamo alcuni elif. Controlla la seguente parte di codice:

La guida definitiva a Python e Blockchain: parte 1

Quello che hai qui è praticamente lo stesso codice di prima.

La guida definitiva a Python e Blockchain: parte 1

Ok, quindi ora, lo porteremo all’ultimo livello. Introduciamo un’ultima dichiarazione else.

Quindi, abbiamo tre condizioni qui:

  • Il primo controlla se il numero è maggiore di 6 o meno
  • Il successivo controlla se il numero è inferiore a 4
  • Infine, se tutte le condizioni falliscono, il blocco else viene attivato e stampa che il numero è 5.

Questo è esattamente ciò che accade nel codice esterno, come puoi vedere nel terminale qui sotto

# 2 Dichiarazioni terziarie

Infine, abbiamo affermazioni terziarie. Controlla questo codice:

età = 21

messaggio = “Sei idoneo” se l’età >= 18 else “Non sei idoneo”

print (messaggio)

Vedi quella dichiarazione?

“Sei idoneo” se l’età >= 18 else “Non sei idoneo”

Questa è chiamata un’istruzione terziaria, che segue questo formato: “Istruzione 1” se Condizione altrimenti “Istruzione 2”

Fondamentalmente, l’istruzione 1 sarà attivata solo se la condizione è vera, altrimenti l’istruzione 2 è attivata.

Loop

Infine, hai i loop. I loop sono parte integrante della programmazione e vengono utilizzati quando è richiesta la ripetizione di un compito particolare. I loop di Python sono in realtà piuttosto interessanti e aggiungono una dimensione completamente nuova alla tua codifica.

# 1 per i loop

Per ora, esaminiamo il ciclo for di base:

per num nell’intervallo (3):

   print (num)

Ok, allora cosa sta succedendo qui?

range (n) ti darà numeri che vanno da 0 a n-1. Quindi, in questo caso, va da 0 a 2. La variabile num assumerà il valore dell’intervallo ad ogni passaggio. Quindi, se stampi “num”, questo è ciò che otterrai:

“Num” assume tutti i valori da 0 a n-1 in ogni iterazione.

Oh, e questo non è solo limitato ai numeri. Possiamo creare questo ciclo anche con le stringhe.

per x in “PYTHON”:

   stampa (x)

Questo stamperà quanto segue:

La guida definitiva a Python e Blockchain: parte 1

Come puoi vedere, x occupa ogni singolo carattere nella stringa.

La guida definitiva a Python e Blockchain: parte 1

# 2 While Loops

C’è un altro tipo di loop là fuori chiamato il ciclo “while”.

numero = 100

mentre il numero >= 1:

   print (numero)

   numero // = 2

Allora, cosa sta succedendo qui?

Stiamo eseguendo il ciclo fino a quando il numero è maggiore o uguale a 1. Quando facciamo numero // = 2 stiamo fondamentalmente facendo numero = numero // 2.

Vediamo cosa stampa:

La guida definitiva a Python e Blockchain: parte 1

Giocare con i loop

# 1 Combinazione di loop con If-Else

La prima cosa che faremo è combinare i cicli con le istruzioni if-else.

x = 100

per numero nell’intervallo (3):

   se x > 1:

       print (“positivo”)

   altro:

       print (“negativo”)

Se lo eseguiamo, l’output sarà come questo:

La guida definitiva a Python e Blockchain: parte 1

Ok, cambiamo un po ‘. Aggiungeremo qualcosa a questo codice.

x = 100

per numero nell’intervallo (3):

   se x > 1:

       print (“positivo”)

       rompere

   altro:

       print (“negativo”)

Qual è la differenza?

Vedi che una sola parola è stata aggiunta al codice? La parola chiave “break” aiuta il compilatore a uscire dal codice. Quindi nel codice sopra, “positivo” viene stampato solo una volta e quindi il compilatore si interrompe.

La guida definitiva a Python e Blockchain: parte 1

# 2 Cicli annidati

I loop annidati sono fondamentalmente loop all’interno di loop. Qui controlla questo:

per x nell’intervallo (5):

   per y nell’intervallo (3):

       stampa (x, y)

Allora cosa è successo qui?

Abbiamo un ciclo x e un ciclo y che vengono eseguiti al suo interno. Ora stampiamo il risultato nel terminale e vediamo cosa otteniamo:La guida definitiva a Python e Blockchain: parte 1 blockchain Python

Blockchain Python: conclusione

Fermiamoci qui per ora.

Ti abbiamo fornito le basi del linguaggio Python. Ti suggeriamo di utilizzare il codice per giocherellare un po ‘e metterti più a tuo agio. Nella parte successiva, inizieremo finalmente la nostra blockchain.

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me