






































































Studia grazie alle numerose risorse presenti su Docsity
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Prepara i tuoi esami
Studia grazie alle numerose risorse presenti su Docsity
Prepara i tuoi esami con i documenti condivisi da studenti come te su Docsity
Trova i documenti specifici per gli esami della tua università
Preparati con lezioni e prove svolte basate sui programmi universitari!
Rispondi a reali domande d’esame e scopri la tua preparazione
Riassumi i tuoi documenti, fagli domande, convertili in quiz e mappe concettuali
Studia con prove svolte, tesine e consigli utili
Togliti ogni dubbio leggendo le risposte alle domande fatte da altri studenti come te
Esplora i documenti più scaricati per gli argomenti di studio più popolari
Ottieni i punti per scaricare
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Appunti su Python presi nel 2022
Tipologia: Appunti
1 / 78
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!







































































Istruzione: comando che viene scritto Programma: insieme di istruzioni Pycharm: programmatore che permettono di tradurre i programmi Istruzioni #: permette di fare commenti L’algoritmo sono l’insieme dei comandi da fare. Esempio di algoritmo: Ora però devo tradurre in linguaggio Guardiamo la terza riga, ora dobbiamo indicare che i dati si trovano in un file che poi il calcolatore andrà ad elaborare, oppure se sono pochi, li posso direttamente digitare con la tastiera Fp = open permette di aprire un file Print() permette di leggere e stampare un file Vediamo questo comando input indica un comando che può essere dato solo attraverso la tastiera. Poi nella console andrò ad associare la t a un valore assegnato con la tastiera, e avrò una stringa, ovvero un dato che non può essere cancellato.
La quarta colonna ci dice come dobbiamo fare se dobbiamo prendere i dati da un altro file La quinta ci dice, attraverso la funzione print, di leggere e stampare i valori presenti in fp. La sesta ci dice di chiudere il file Per ordinare si fa cosi S.sort() Cosi si usano il se e l’altrimenti, che diventano if e else. Successivamente ovviamente andrà tradotto il resto della frase Traduciamo la prima frase Cosi si indica la prima frase, len(S) rappresenta l’insieme degli elementi di S, % 2 vuol dire diviso 2, l’ultima parte vuol dire che è e dispari Cosi si traduce la seconda frase Questa è la terza frase
La seconda riga associa un nome a un’operazione La terza riga associa un nome ad altre associazioni Posso anche associare un anche un nome ad uan funzione N.B: Se scrivo x e X per il programma sono due nomi diversi Questa è una lista di valori Con i pallini si pongono delle interruzioni. Dovrò poi fare debug e poi mi darà le operazioni fino al primo pallino rosso, poi successivamente potrò fare esegui fino al prossimo pallino rosso ecc Debug permette di leggere nella console le informazioni
Dopo aver fatto debug apparirà questa finestra sotto, che è ferma a prima del pallino. Se clicco sulla freccia ricurva di fianco a console partirà la riga dopo, e in questo caso mi dirà che x viene identificato come un numero intero che è 3 Lezione 8 marzo GENERAZIONE NUMERI Attraverso questo sito: https://docs.python.org/3/library/random.html è possibile eseguire delle istruzioni per generare numeri Import random permette di importare dei comandi come random.choices Random.choices comando che permette di fare generazioni random tra elementi. È formato da tre argomenti: il primo sono gli elementi, il secondo sono i pesi assegnati, e il terzo sono il numero di estrazioni In questo caso volevo generare delle generazioni random tra 3 elementi, A, B e C. Ho dapprima fatto import random per importare il comando, successivamente ho eseguito il comando dove ho dovuto mettere i 3 elementi, poi le loro probabilità di uscita, e poi le k estrazioni. Facendo il pallino e poi facendo debug
Float(input()) float permette di trasformare la stringa in un numero intero. Input permette di associare ad a un numero intero attraverso poi la console. Se avessi fatto solo input e avessi associato ad a e b due numeri, sarebbero stati stringhe, e sarebbe apparso a: ‘8’. Mettendo float (che in genere si usa per i numeri decimali) davanti li faccio diventare numeri Qui poi ho finito facendo il perimetro (ho cambiato i valori di a e b) LE LISTE La lista può essere fatta con una funzione attraverso una funzione, come la funzione random choices che abbiamo visto prima, oppure direttamente sulla macchina. Per fare una lista direttamente sulla macchina si fa attraverso le parentesi quadre, che non vengono usate solitamente nelle espressioni proprio perché indicano una lista. Oltre alla quadra devo ovviamente associarla a qualcosa, nel nostro caso l
Ad ogni elemento corrisponde una posizione. Nota bene: il primo elemento occupa la posizione zero. Qui possiamo vedere la lista l1, e sotto possiamo indicare attraverso delle lettere degli elementi della lista attraverso il comando l1 e le quadre. Vediamo nello specifico:
Guardare dal rigo 7 Introduciamo ora elif, e avremo cosi 3 gruppi di istruzioni. Il calcolatore valuterà la prima espressione booliano, se è vera elaborerà il primo gruppo di istruzioni, se è falsa andrà alla seconda espressione booliana, se è vera elaborerà il secondo gruppo gruppo di istruzioni, se è falsa andrà al terzo gruppo. Alcune nozioni per impartire comandi alle espressioni Booliane
Definendo x ed y, l’espressione Booliana mi dirà se tutti questi comandi sono veri o falsi != vuol dire diverso ESERCIZIO Ho impostato il problema con gli asterischi, definendo a, b e come numeri reali. L’esponenziale si scrive cosi nel linguaggio Ora devo sfruttare l’espressione booliana e dare istruzioni Ho definito l’espressione booliana
Ho fatto run ma non è uscito nulla perché devo prima definire i valori di a, b e c Premo run, definisco i valori e mi dà le due soluzioni. Ho cambiato i valori e le soluzioni sono ora coincidenti ALTRO ESERCIZIO Fare il minimo tra tre valori a,b e c Per prima cosa attribuisco ad a,b e c i comandi che siano tre numeri interi (prima erano reali, e avevo scritto float, ora scrivo int) Int(input) si differenzia da float perché indica numeri interi anziché reali
Creo la struttura per individuare il minimo Stiamo dicendo che se a è minore di b e c allora il minore è a Altrimenti se b è minore di Questo è il comando per indicare il minore clicco su run e mi chiede di attribuire dei valori Questo è il risultato attribuendo questi valori Supponiamo che attribuisco tre valori uguali, con la nostra scrittura per individuare il minore andrà a fare le tre istruzioni, ma possiamo farlo con meno passaggi, mettendo al posto di minore e maggiore, minore uguale e maggiore uguale.
fp.readline legge una riga del file fp, infatti x1 indica la lettura della prima riga, x2 la lettura della seconda riga. Il nostro scopo è ora mettere tutti i dati del file in una lista indico con l la lista, che deve essere riempita con la lista del file. Alla colonna tre ho scritto “per ogni riga del file che ho indicato con fp”, l.append è un comando che indica aggiungi, ed l.append(r) è un comando che indica “aggiungi r (le righe) alla lista”. Essendo numeri interi, aggiungo int, quindi diventa l.append(int(r)). Facendo run mi usciranno i valori della lista LEZIONE 15 MARZO DEFINIRE LA SOMMA Partiamo da questo esercizio Definisco S, la cui collezione di numeri viene presa dal file dati.txt In questo modo indico che ogni valore di x in S viene sommato
C’è però un problema. Il programma non riconosce somma, è come se non sapesse da quale valore iniziare. Per risolvere questo problema, definisco la somma come 0 Mandiamo in esecuzione e ci esce il risultato. Nota bene: è necessario osservare se vi sono state modifiche alla lista durante il debug. Se cosi fosse, abbiamo sbagliato qualcosa DEFINIRE IL MASSIMO Altro esercizio, qui dobbiamo definire il linguaggio che ci permette di calcolare il numero massimo di S. Qual è il modo più veloce? N.B: ho dimenticato di mettere tra virgolette dati.txt Andrò a fare questo, ovvero:
Innanzitutto calcolo il massimo, che prima avevo trovato con un procedimento più lungo, ma posso anche farlo cosi Andrò a definire Questo è il linguaggio Range Parliamo ora di range. La funzione range() è chiamata funzione iterativa, perché restituisce una sequenza di numeri, a partire da 0 (per impostazione predefinita), e incrementa di 1 (per impostazione predefinita) e ferma prima di un numero stabilito. Come funziona? In questo esempio ho messo un solo argomento, che è 3. Questo definisce un range da 0 a 3
Qui definisco for k in range e scrivo print(k) per indicare che voglio leggere k. È come se stessi dicendo “per ogni k tra 0 e 3 escluso. Facendo run infatti mi leggerà i valori 0,1,2. Mettendo due argomenti, ad esempio (4,19), indico un range che va dalla posizione 4 (incluso) e 19 (escluso). Se invece scrivo len(S) sto indicando dalla posizione 4 di S fino all’ultima posizione di S. Se voglio indicare, ad esempio, il penultimo argomento di S, andrò a mettere len(S)- 1 Attraverso il terzo argomento, sto definendo lo step, ogni quante posizioni considero. Nel nostro esempio il risultato sarà 4,6,8,10 ecc Altro esercizio Immaginiamo che ci sia un investitore che decide di investire un certo capitale su un fondo e vogliamo vedere il valore iniziale e finale in base alla distribuzione. I dati da definire sono: Le due soglie indicano, la prima la soglia del fondo per la quale investo, la seconda la soglia del fondo per la quale disinvesto Il tempo indica i giorni, sono quindi 10mila giorni Guardiamo la distribzione, la prima parentesi quadra ci dice gli aumenti o le diminuizioni del valore del fondo, la seconda quadra le probabilità connesse