vuoi
o PayPal
tutte le volte che vuoi
INFORMATICA:
LA LOGICA BOOLEANA:
TRUE = VERO = 1FALSE = FALSO = 0
- (x) A AND B (necessariamente entrambi)
- (+) A OR B (1 necessario, 2 va bene)
- (=) A XOR B (esclusiva)
- (-) NOT A (opposto)
L'operatore AND ha la precedenza su OR, se voglio modificare l'ordine utilizzo le parentesi.
AND
- A x 1 = A
- A x 0 = 0
- A x A = A
- A x (!A) = 0
- A x B = B x A
OR
- A + 0 = A
- A + 1 = 1
- A + A = A
- A + (!A) = 1
- A + B = B + A
Corte ACCEDERE a Python:
- PROMPT dei COMANDI
- EDITOR (es.: Atom)
- Creare una cartella sul Desktop, con all'interno i file su cui lavorare.
- Aprire da Atom la cartella precedentemente creata.
- Editare su Atom.
- Aprire il prompt dei comandi e scrivere il percorso dei file da mandare in esecuzione
- cd Desktop
- cd (nome_cartella)
- python (nomefile.py)
deve essere salvato con l'estensione python.
IL PROGRAMMA VA IN ESECUZIONE
SALVARE SEMPRE DA ATOM PRIMA DI MANDARE IN ESECUZIONE SUL PROMPT (CTRL S)
Definizioni utili:
Algoritmo: Procedimento che a partire da uno stato iniziale consente di ottenere in un tempo finito un risultato atteso, eseguendo un insieme di operazioni descritte in maniera completa e non ambigua.
Linguaggio di programmazione: Linguaggio artificiale che può essere usato per descrivere algoritmi.
Programma: Sequenza di istruzioni iscritte in un linguaggio di programmazione che codificano un algoritmo.
Programma sorgente: Sequenza di istruzioni espresse attraverso un linguaggio di programmazione.
Programma eseguibile in linguaggio macchine: Sequenza di istruzioni in linguaggio macchine.
Compilatore: Riceve in ingresso un programma sorgente e genera un eseguibile. Traduce tutte le istruzioni in un unico passaggio.
Interprete: Riceve in ingresso un programma sorgente e interpreta ed esegue le istruzioni una alla volta senza generare un eseguibile.
Linguaggio di alto livello: es. Python: Linguaggio progettato per essere facilmente leggibile e utilizzabile dagli esseri umani.
Linguaggio di basso livello: Linguaggio progettato per essere facilmente eseguibile da un computer (il codice è in linguaggio macchina).
Errore di sintassi: Errore di scrittura del codice (es.: punteggiatura).
Errore di semantica: Errore che fa ottenere risultati diversi dal previsto.
Script: Programma memorizzato in un file solitamente destinato ad essere interpretato.
Bug: Errore in un programma.
File: Entità identificata da un nome, solitamente memorizzata su hard disk, floppy disk, CD-ROM e contenente una serie di dati.
Directory: Contenitore di file e anche chiamata cartella.
Percorso: Sequenza di nomi di directory che specifica l'esatta locazione di un file.
Modulo: Un file .py con all'interno una collezione di funzioni pronte per l'uso.
Package: È una directory contenente uno o più moduli.
STRUTTURA DATI SCALARE:
CONTIENTE UN UNICO ELEMENTO ATOMICO, A CUI VIENE ASSOCIATO UN NOME ED UN CONTENUTO.
ALLA VARIABILE SCALARE VIENE ASSOCIATO IL TIPO DI CONTENUTO DELLA VARIABILE; POSSONO ESSERE ATTRIBUITI TIPI NUMERICI O LOGICI.
Type(5)Int
Type(true)bool
STRUTTURA DATI STRINGHE:
CONTENGONO PIÙ ELEMENTI A CUI VIENE ASSOCIATO UN NOME, I LORO CONTENUTO SONO CARATTERI (STRINGHE).
Type("a")str
Type("ab")str
È una struttura dati organizzata sequenzialmente ossia permette di accedere ad ogni elemento.
A = "CIAO"
A[0]=CA[1]=IA[2]=AA[3]=OA[-1]=OA[-2]=AA[-3]=I
Per conoscere la lunghezza della stringa utilizzo la funzione:
len(A)4
B = "CORSO DI INFORMATICA"0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
B[5:]'O CORSO'
B[:]'CORSO DI INFORMATICA'
B[6:8]'DI'
B[-6:-3]'MAT'
B[0:10:2]'CROD'
B[::-2]'CADRO NOTIC'
E' possibile estendere le stringhe tramite concatenazione + :
B = "CORSO DI INFORMATICA"B = B + " E PROGRAMMAZIONE"print(B)CORSO DI INFORMATICA E PROGRAMMAZIONE
A="CIAO"A=A*4print(A)CIAOCIAOCIAOCIAO
Non è possibile modificare gli elementi di una stringa
FUNZIONI
La funzione può essere vista come un nome attribuito ad un insieme di istruzioni. A scrivo il codice di una funzione una volta, la invoco ogni volta che mi serve.
Conosciamo già funzioni quali: type(), range(), input(), CONVERSIONI FORMATI: str(), int(), float()
Le funzioni possono essere composte in modo che il risultato di una sia l'argomento di un'altra.
SUBROUTINE
PROCEDURA, non restituisce alcun risultato es: print("ciao")
FUNZIONE, restituisce un risultato es: input()
1. Come creare/utilizzare una funzione all'interno di uno script Python?
2. Come importare/utilizzare una funzione già esistente?
LA SINTASSI PER LA DEFINIZIONE DI UNA FUNZIONE PYTHON È:
- def nomeFunzione(parametri, ecc.)
- istruzione 1
- ecc.
Può essere usato un qualsiasi nome per una funzione, la funzione deve essere definita prima di essere utilizzata.
Quando definisco una funzione non conosco a priori i valori su cui dovrà operare.
Nella definizione uso quindi dei parametri formali per dare un nome ai dati che ancora non conosco.
L'interprete Python, di volta in volta, collegherà i parametri attuali ai parametri formali.
È possibile dichiarare delle variabili all'interno delle funzioni; al termine della funzione queste variabili cesseranno di esistere.
- Per poter utilizzare le funzioni di un modulo dobbiamo dire all'interprete di caricarlo in memoria (importazione).
IMPORTAZIONE MODULO PRESENTE NELLA DIRECTORY CORRENTE
Gestione File
Hardware di un computer
- Memoria Centrale (RAM)
- Memoria principale di lavoro
- Capienza limitata
- Volatile (spegnendo il computer si perdono tutte le informazioni)
- Accesso veloce ai dati
- Memoria di massa (hard-disk)
- Memoria secondaria di lavoro
- Capienza maggiore
- Non volatile (spegnendo il computer non si perdono le informazioni)
- Accesso lento ai dati
Quando salvo un file viene salvato nella memoria di massa.
Apertura/Chiusura di un file
variabile = open("nomefile, estensione", "modalità di apertura")
- r → Modalità solo lettura
- w → Modalità scrittura (se il file non esiste, viene creato; se il file esiste, il contenuto preesistente verrà eliminato)
- a → Modalità append (i nuovi dati saranno accodati a quelli esistenti)
La variabile che rappresenta il file nello script è il meccanismo che implementa le operazioni su file.
Variabile.close() permette di chiudere un file precedentemente aperto.
Metodi
Variabile.write("scrive ciò che c'è nelle parentesi")
Print(variabile.read(20)) legge i primi 5 caratteri del file
Print(variabile.read(15)) legge i primi 5 caratteri del file
Copiare il contenuto di un file su un altro
File1.copiare=open("F1.txt","r")
Funzione_copiare=open("F2.txt","w")
Contenuto=file1.copiare.read()
File2.copiare.write(contenuto)
File1.copiare.close()
Funzione_copiare.close()
Variabile.readline() legge tutti i caratteri dalla posizione corrente fino al prossimo ritorno a capo.
È possibile variare il punto in cui verranno letti/scritti i prossimi dati con il metodo seek.
Variabile.seek(15)
Variabile.tell() restituisce il valore numerico corrispondente alla posizione corrente all'interno del file.
Il carattere ‘/n’ a volte da fastidio, il metodo strip permette di risolvere il problema.
Spesso si ha da fare con file CSV
Es. Paolo,Rossi,25
Gaetano,Scirea,28
Leggendo una riga, il metodo split permette di ottenere una lista in cui gli elementi sono divisi e portati all’interno delle virgole. Split(" ")
['Paolo', 'Rossi', '25']
['Gaetano', 'Scirea', '28']