Galleria mappe mentale Appunti di studio su Python (prima introduzione a Python)
Apprendimento dei concetti di Python e comprensione preliminare di cosa sia Python. Python è già uno dei linguaggi di programmazione più snelli e facili da imparare al mondo. Python può essere eseguito su tutti i principali sistemi operativi e computer e può essere utilizzato in qualsiasi cosa, dalla creazione di server Web alla creazione di applicazioni desktop.
Modificato alle 2024-10-13 16:11:18Find a streamlined guide created using EdrawMind, showcasing the Lemon 8 registration and login flow chart. This visual tool facilitates an effortless journey for American users to switch from TikTok to Lemon 8, making the transition both intuitive and rapid. Ideal for those looking for a user-centric route to Lemon 8's offerings, our flow chart demystifies the registration procedure and emphasizes crucial steps for a hassle-free login.
これは稲盛和夫に関するマインドマップです。私のこれまでの人生のすべての経験は、ビジネスの明確な目的と意味、強い意志、売上の最大化、業務の最小化、そして運営は強い意志に依存することを主な内容としています。
かんばんボードのデザインはシンプルかつ明確で、計画が一目で明確になります。毎日の進捗状況を簡単に記録し、月末に要約を作成して成長と成果を確認することができます。 実用性が高い:読書、早起き、運動など、さまざまなプランをカバーします。 操作簡単:シンプルなデザイン、便利な記録、いつでも進捗状況を確認できます。 明確な概要: 毎月の概要により、成長を明確に確認できます。 小さい まとめ、今月の振り返り掲示板、今月の習慣掲示板、今月のまとめ掲示板。
Find a streamlined guide created using EdrawMind, showcasing the Lemon 8 registration and login flow chart. This visual tool facilitates an effortless journey for American users to switch from TikTok to Lemon 8, making the transition both intuitive and rapid. Ideal for those looking for a user-centric route to Lemon 8's offerings, our flow chart demystifies the registration procedure and emphasizes crucial steps for a hassle-free login.
これは稲盛和夫に関するマインドマップです。私のこれまでの人生のすべての経験は、ビジネスの明確な目的と意味、強い意志、売上の最大化、業務の最小化、そして運営は強い意志に依存することを主な内容としています。
かんばんボードのデザインはシンプルかつ明確で、計画が一目で明確になります。毎日の進捗状況を簡単に記録し、月末に要約を作成して成長と成果を確認することができます。 実用性が高い:読書、早起き、運動など、さまざまなプランをカバーします。 操作簡単:シンプルなデザイン、便利な記録、いつでも進捗状況を確認できます。 明確な概要: 毎月の概要により、成長を明確に確認できます。 小さい まとめ、今月の振り返り掲示板、今月の習慣掲示板、今月のまとめ掲示板。
Appunti di studio su Python (prima introduzione a Python)
Parte 1 Introduzione alla programmazione
Capitolo 1 Prima introduzione ai concetti di Python
Cos'è la programmazione?
La programmazione si riferisce alla scrittura di istruzioni da eseguire su un computer.
Le istruzioni eseguite da un computer sono chiamate codice.
Cos'è Python?
Python è un linguaggio di programmazione open source inventato dal programmatore olandese Guido van Rossum.
Python è già uno dei linguaggi di programmazione più snelli e facili da imparare al mondo. Python può essere eseguito su tutti i principali sistemi operativi e computer e può essere utilizzato in qualsiasi cosa, dalla creazione di server Web alla creazione di applicazioni desktop.
guscio interattivo
Python viene fornito con un programma chiamato IDLE, che sta per Interactive Development Environment. Inseriremo il codice Python in IDLE.
Il programma IDLE è chiamato shell interattiva. Puoi digitare il codice Python direttamente al suo interno e il programma stamperà i risultati.
editor di testo
Avviare l'applicazione IDLE, fare clic su "File" e selezionare "Crea nuovo file". Si aprirà un editor di testo.
Il codice può essere scritto in un editor di testo e salvato per essere eseguito successivamente.
La differenza tra modifica del testo e shell interattiva
1. Gli editor di testo sono più adatti per i programmi che desiderano salvare e modificare. Se si digita un codice errato nella shell interattiva e si provoca un errore, è necessario reinserire tutto il codice. Con un editor di testo, basta correggere e rieseguire.
2. L'output dell'esecuzione del programma da un file sarà leggermente diverso da quello dell'esecuzione del programma da una shell interattiva. Si prega di notare da dove viene eseguito il programma.
Glossario
Programmazione: scrivere comandi da eseguire su un computer.
Codice: istruzioni scritte da un programmatore affinché un computer le esegua.
Linguaggi di programmazione di basso livello: linguaggi di programmazione più vicini alla scrittura di istruzioni in formato binario (0 e 1) rispetto ai linguaggi di programmazione di alto livello (linguaggi di programmazione che suonano più come l'inglese).
Linguaggio Assembly: un linguaggio di programmazione difficile da imparare.
Linguaggio di programmazione di alto livello: un linguaggio di programmazione che assomiglia più all'inglese che a un linguaggio di editing di basso livello.
Capitolo 2 Panoramica della programmazione
Commento: una riga (o parte) di codice scritta in inglese o in un altro linguaggio naturale. All'inizio della riga è presente un segno speciale per indicare al linguaggio di ignorare questa riga di codice. Python usa # per creare commenti.
Lo scopo dei commenti è spiegare cosa fa il codice.
I commenti sono necessari solo quando vengono eseguite operazioni speciali nel codice o quando il codice non è chiaro e di facile comprensione.
Print (stampa), il programma può stampare qualsiasi cosa, purché ti ricordi di aggiungere virgolette doppie.
Righe di codice: i programmi Python sono composti da righe di codice.
Di solito distinguiamo il codice in base al numero di righe di codice.
In IDLE è possibile aprire il menu "Modifica" e selezionare il pulsante "Vai alla riga" per passare alla riga specificata del programma.
In una shell interattiva è possibile inserire solo una riga di codice alla volta e non è possibile copiare e incollare più righe di codice.
A volte un pezzo di codice è più lungo di una riga e può essere esteso a una nuova riga utilizzando virgolette triple, parentesi quadre o graffe.
Puoi anche usare la barra rovesciata\ per racchiudere il codice.
Parole chiave: alcune parole con significati speciali nei linguaggi di programmazione come Python.
Spaziatura: il rientro indica all'interprete Python dove inizia e finisce un blocco di codice. La distanza di rientro in Python è sempre di 4 spazi.
tipo di dati
Python divide i dati in diverse categorie, ovvero i tipi di dati.
String (str, abbreviazione di string), una stringa è una sequenza di uno o più caratteri racchiusi tra virgolette.
Dati interi (int, l'intero processo è intero), dati interi.
Tipo di dati float, numero a virgola mobile, decimale (numero con punto decimale).
Valore booleano (bool, booleano), ha solo due valori: True e False.
Tipo None, il suo valore è sempre None, utilizzato per indicare dati mancanti.
In Python, ogni valore di dati è chiamato oggetto.
Un oggetto può essere pensato come un valore di dati con 3 proprietà
Identificatore univoco: si riferisce all'indirizzo nella memoria del computer, che non cambierà.
Tipo di dati: è la categoria di dati a cui appartiene l'oggetto, che determina le proprietà dell'oggetto e non cambierà.
Valore: i dati che rappresentano l'oggetto.
costanti e variabili
Una costante è un valore che non cambia mai.
Una variabile si riferisce a un valore che cambia.
Una variabile è costituita da uno o più nomi di caratteri a cui viene assegnato un valore utilizzando il segno uguale dell'operatore di assegnazione.
4 principi per la denominazione delle variabili
1. I nomi delle variabili non possono contenere spazi. Se vuoi usare due parole nel nome di una variabile, aggiungi un trattino basso nel mezzo.
2. Nei nomi delle variabili è possibile utilizzare solo lettere, numeri e trattini bassi specifici.
3. I nomi delle variabili non possono iniziare con numeri.
4. Non è possibile utilizzare parole chiave Python come nomi di variabili.
La grammatica (sintassi) si riferisce a un insieme di regole e processi che regolano la struttura delle frasi in una lingua, in particolare l'ordine delle parole.
Errori ed eccezioni
Due tipi di errori in Python: errori di sintassi ed eccezioni.
operatori aritmetici
Python divide gli operatori in più tipi e gli operatori aritmetici vengono utilizzati per semplici calcoli aritmetici.
Capitolo 3 Funzioni
Funzione: un'istruzione composta che accetta input, esegue istruzioni e restituisce output.
Chiamare una funzione significa fornire alla funzione l'input necessario per eseguire le istruzioni e restituire l'output.
Parametro: ogni input della funzione è un parametro. Quando si forniscono parametri a una funzione, si parla di "passaggio dei parametri della funzione".
Parametri richiesti: quando l'utente chiama la funzione, tutti i parametri richiesti devono essere passati, altrimenti Python riporterà un errore di eccezione.
Parametri facoltativi: le funzioni vengono passate solo quando necessarie e non sono necessarie per eseguire il programma. Se non vengono passati parametri facoltativi, la funzione utilizzerà i valori predefiniti.
Definire una funzione: per creare una funzione in Python, è necessario scegliere un nome di funzione e definirne i parametri, il comportamento e il valore restituito.
Nome della funzione: La parola chiave def dice all'operatore Python che una funzione viene definita.
Dopo la parola chiave def, specificare il nome della funzione. La selezione del nome segue le stesse regole dei nomi delle variabili.
Per convenzione, i nomi delle funzioni non dovrebbero utilizzare lettere maiuscole e le parole dovrebbero essere separate da trattini bassi: like_this.
Parametri: dopo aver nominato la funzione, aggiungi una coppia di parentesi dopo il nome. Nelle parentesi ci sono i parametri che desideri che la funzione accetti.
Una funzione può avere uno o più parametri oppure non può accettare parametri. Se definisci una funzione che non richiede parametri, devi solo lasciare vuote le parentesi quando definisci la funzione.
Definizione: aggiungi due punti dopo le parentesi, quindi a capo e rientra di 4 spazi. Tutto il codice dopo i due punti rientrato di 4 spazi costituisce la definizione della funzione.
Valore restituito: la parola chiave return specifica il valore restituito quando si chiama la funzione, che chiameremo valore restituito dalla funzione.
Se è necessario utilizzare il valore restituito dalla funzione in un secondo momento nel programma, si consiglia di salvare il valore restituito dalla funzione in una variabile.
La funzione deve contenere un'istruzione return. Se la funzione non ha un'istruzione return, verrà restituito None.
Sintassi: puoi chiamare una funzione utilizzando la sintassi "[nome funzione]([argomenti separati da virgola])".
Funzioni integrate: il linguaggio di programmazione Python viene fornito con una libreria di funzioni chiamata funzioni integrate, che può eseguire vari calcoli e attività senza alcun lavoro aggiuntivo.
la funzione integrata len indica la lunghezza dell'oggetto restituito, come la lunghezza di una stringa (numero di caratteri)
funzione incorporata str, str accetta un oggetto come parametro e restituisce un nuovo oggetto (stringa) con tipo di dati str
int funzione incorporata, che accetta un oggetto come parametro e restituisce un oggetto intero (intero)
La funzione integrata float accetta un oggetto come parametro e restituisce un oggetto numero in virgola mobile (decimale)
Nota:
I parametri passati alle funzioni str, int o float devono essere convertibili in stringhe, numeri interi o numeri in virgola mobile.
La funzione str accetta la maggior parte degli oggetti come parametri, ma la funzione int può accettare solo stringhe o numeri a virgola mobile il cui contenuto è numerico. La funzione float può accettare solo stringhe o oggetti interi il cui contenuto è numerico.
La funzione incorporata di input, informazioni sull'utente del telefono cellulare, accetta una stringa come parametro e la visualizza all'utente che utilizza il programma.
L'utente inserisce la risposta nella shell e il programma salva la risposta in una variabile.
Riutilizzo delle funzioni: le funzioni non possono essere utilizzate solo per calcolare e restituire valori, ma possono anche incapsulare le funzioni che vogliamo utilizzare.
Poiché le funzioni possono essere riutilizzate, l'utilizzo delle funzioni può ridurre la quantità di codice.
Le funzioni del nuovo programma sono esattamente le stesse del programma precedente, ma poiché le funzioni sono incapsulate in una funzione che può essere richiamata in qualsiasi momento secondo necessità, la quantità di codice è notevolmente ridotta e la leggibilità è migliorata.
Ambito: un attributo molto importante delle variabili.
Quando definisci una variabile, il suo ambito si riferisce a quali parti del programma possono leggerla e scrivervi.
L'ambito di una variabile è determinato da dove è definita nel programma.
Definire una variabile all'esterno di una funzione o classe
Ambito globale: ovvero può essere letto e scritto ovunque nel programma.
Variabile globale: una variabile con ambito globale.
Definire una variabile all'interno di una funzione o classe
Ambito locale: ovvero il programma può leggere e scrivere la variabile solo all'interno della funzione in cui è definita.
Variabile locale: una variabile con ambito locale.
Negli ambiti locali è richiesta un po' di cautela: la parola chiave globale deve essere utilizzata esplicitamente e le variabili che si desidera modificare devono essere negoziate successivamente.
Gestione delle eccezioni: supporta il test delle condizioni di errore, l'individuazione delle eccezioni quando si verificano errori e la decisione su come gestirle.
clausola try: contiene errori che possono verificarsi.
clausola tranne: contiene codice che viene eseguito solo quando si verifica un errore.
Nota: non utilizzare variabili definite dalle istruzioni try nelle istruzioni tranne.
Stringa di documentazione (docstring): utilizzata per spiegare le funzioni della funzione e registrare i tipi di parametri richiesti.
Capitolo 4 Contenitori
metodo
I metodi sono funzioni strettamente correlate a un tipo di dati specificato.
I metodi, come le funzioni, eseguono codice e restituiscono risultati.
Diverso dalle funzioni: i metodi possono essere chiamati solo su oggetti.
I parametri possono essere passati ai metodi.
Contenitore 1: elenco (elenco)
Concetto: una lista è un contenitore che memorizza gli oggetti in un ordine fisso.
Metodo di rappresentazione: Le liste sono rappresentate da parentesi quadre ([ ]).
Crea la sintassi dell'elenco:
Utilizzare la funzione elenco per creare un elenco vuoto.
Esempio: frutto = lista( )
Utilizzare direttamente le parentesi quadre ( [ ] ).
Esempio: frutto = []
Se nell'elenco sono presenti oggetti, devono essere separati da virgole.
Esempio: frutto = ["mela","arancia","pera"]
Elenca le funzionalità
Gli elementi nell'elenco sono ordinati
L'ordine degli elementi in un elenco è fisso a meno che l'ordine degli elementi nell'elenco non venga riorganizzato.
Puoi utilizzare il metodo append per aggiungere un nuovo elemento all'elenco, ma il metodo append aggiunge sempre il nuovo elemento alla fine dell'elenco.
Esempio: frutto = ["Mela","Arancia","Pera"] frutta.append("Banana") frutta.append("Pesca") stampa(frutta) >>['Mela','Arancia','Pera','Banana','Pesca']
L'indice degli elementi nell'elenco. L'indice del primo elemento è 0, non 1.
Gli elenchi possono contenere qualsiasi tipo di dati.
Gli elenchi sono modificabili. Se un contenitore è modificabile, gli oggetti possono essere aggiunti o eliminati dal contenitore.
Puoi modificare un elemento in un elenco assegnando il suo indice a un nuovo oggetto.
Esempio: colori = ["blu","verde","giallo"] stampa(colori) colori[2] = "rosso" stampa(colori) >>['blu','verde','giallo'] >>['blu','verde','rosso']
Puoi anche utilizzare il metodo pop per rimuovere l'ultimo elemento dall'elenco.
Esempio: colori = ["blu","verde","giallo"] stampa(colori) oggetto = colori.pop( ) stampa(elemento) stampa(colori) >>['blu','verde','giallo'] >>'giallo' >>'blu','verde']
Non è possibile utilizzare il metodo pop su un elenco vuoto.
È possibile utilizzare l'operatore di addizione per unire due elenchi
Esempio: colori1 = ["blu", "verde", "giallo"] colori2 = ["arancione", "rosa", "nero"] colori1 colori2 >> ['blu', 'verde', 'giallo', 'arancione', 'rosa', 'nero']
Puoi utilizzare la parola chiave in per verificare se un elemento è nell'elenco
Puoi usare la parola chiave per non controllare se un elemento non è nell'elenco
Utilizza la funzione len per ottenere la dimensione dell'elenco (incluso il numero di elementi)
Contenitore 2: tupla
Concetto: una tupla è un contenitore che memorizza oggetti ordinati.
Metodo di rappresentazione: utilizzare le parentesi per rappresentare l'antenato e le virgole devono essere utilizzate per separare gli elementi nell'antenato.
Crea la sintassi della tupla:
Usa la funzione tupla
Esempio: mia_tupla = tupla( )
Usa direttamente le parentesi
Esempio: mia_tupla = ( )
Anche se nella tupla è presente un solo elemento, è necessario aggiungere una virgola dopo l'elemento.
Caratteristiche della tupla:
Puoi solo creare antenati, non puoi aggiungere nuovi elementi o modificare elementi esistenti.
L'elemento della tupla può essere ottenuto allo stesso modo di una lista, facendo riferimento al suo indice:
Esempio: dis = ("1984","Un mondo nuovo","Fahrenheit 452") dis[2] >>'Fahrenheit 451'
Puoi usare la parola chiave in per verificare se un elemento è nell'antenato.
Puoi aggiungere la parola chiave not in apology per verificare se l'elemento non esiste nell'antenato.
Scopo della tupla: le tuple sono molto utili quando si ha a che fare con valori che si sa non cambieranno mai e non si desidera che altri programmi li modifichino.
Contenitore 3: dizionario
concetto: Un dizionario è un altro contenitore integrato per la memorizzazione di oggetti. Vengono utilizzati per collegare oggetti chiave e valore. Il collegamento di un oggetto a un altro, noto anche come mappatura, risulta in una coppia chiave-valore. È possibile aggiungere coppie chiave-valore a un dizionario e quindi eseguire una query sul dizionario utilizzando la chiave per ottenere il valore corrispondente. Ma non è possibile eseguire query utilizzando value.
Metodo di rappresentazione: i dizionari sono rappresentati da parentesi graffe ( { } ).
Sintassi per creare un dizionario:
Crea utilizzando la funzione dict
Esempio: mio_detto = dict( )
Crea direttamente utilizzando le parentesi graffe ({ })
Esempio: mio_detto = { }
Le coppie chiave-valore possono essere aggiunte direttamente durante la creazione di un dizionario. Entrambe le sintassi sopra riportate richiedono che i due punti separino chiavi e valori e che ciascuna coppia chiave-valore sia separata da virgole.
Esempio: frutto = {"Mela":"Rosso","Banana":"Giallo"}
Caratteristiche del dizionario:
Le chiavi del dizionario non sono necessarie.
I dizionari sono mutabili. Dopo aver creato un dizionario, è possibile aggiungere nuove coppie chiave-valore tramite la sintassi "[nome dizionario] [[chiave]]" e cercare valori tramite la sintassi "[nome dizionario] [[chiave]]".
Esempio: fatti = dict ( ) #Aggiungi coppie chiave-valore fatti ["codice"] = "divertimento" print(fatti["codice"]) #Aggiungi coppie chiave-valore fatti ["Bill"] = "Gates" #Trova il valore corrispondente alla chiave stampa (fatti ["Fattura"]) #Aggiungi coppie chiave-valore fatti["fondata"] = 1776 #Trova il valore corrispondente alla chiave stampa (fatti ["fondata"])
I valori del dizionario possono essere qualsiasi oggetto. Ma le chiavi del dizionario devono essere immutabili. Stringhe o tuple possono essere utilizzate come chiavi di dizionario, ma elenchi o dizionari no.
È possibile utilizzare le parole chiave per verificare se una chiave è nel dizionario, ma non è possibile utilizzarle per verificare se un valore è nel dizionario.
Esempio: fattura = dict ({"Bill Gates":"beneficenza"}) print("Bill Gates" nella fattura)
Aggiungi la parola chiave non prima della parola chiave in per verificare se la chiave non è presente nel dizionario.
Utilizzare la parola chiave del per eliminare una coppia chiave-valore da un dizionario.
Esempio: libri = {"Dracula":"Stoker", "1984":"Orwell", "Il processo":"Kafka"} stampare (libri) dei libri["Il processo"] stampare (libri)
Esempio di un programma che utilizza un dizionario:
rime = {"1":"divertimento", "2": "blu", "3": "io", "4": "pavimento", "5":"dal vivo" } n = input("Digita un numero:") se n in rima: rime = rime[n] stampa(rima) altro: print("Non trovato.")
Contenitore annidato in contenitore
I contenitori possono essere conservati all'interno di contenitori.
Glossario
Metodo: una funzione strettamente correlata al tipo di dati specificato.
Elenco: un contenitore che memorizza oggetti ordinati.
Iterabile: un oggetto è iterabile se è possibile accedere a ciascun elemento dell'oggetto utilizzando un ciclo.
Oggetti iterabili: oggetti iterabili come stringhe, elenchi ed elementi.
Indice: un numero che rappresenta la posizione di un elemento in un oggetto iterabile.
Mutabile: il contenuto del contenitore può cambiare.
Immutabile: il contenuto del contenitore non può essere modificato.
Dizionario: un contenitore integrato per archiviare oggetti, mappando un oggetto chiamato chiave su un oggetto chiamato valore.
Chiave: utilizzata per trovare il valore corrispondente nel dizionario.
valore: il valore nel dizionario mappato sulla chiave.
Mappatura: collegamento di un oggetto a un altro.
Coppie chiave-valore: le chiavi vengono mappate ai valori in un dizionario.
Capitolo 5 Operazioni sulle stringhe
5.1 Stringa tra virgolette triple
Se la stringa si estende su più di una riga, è possibile utilizzare le virgolette triple.
Se usi virgolette singole o doppie per definire una stringa che si estende su più righe, Python riporterà un errore di sintassi.
5.2 Indice
Come le liste e le tuple, le stringhe sono iterabili.
Il primo carattere nella stringa ha l'indice 0 e ogni indice successivo viene incrementato di 1.
Python supporta anche l'uso di indici negativi per trovare elementi negli elenchi: l'anno di ricerca che può essere utilizzato per trovare elementi in un oggetto iterabile da destra a sinistra (deve essere un numero negativo).
5.3 Le stringhe sono immutabili
Le stringhe, come le tuple, sono immutabili e i caratteri nella stringa non possono essere modificati.
Se vuoi modificarlo devi creare una nuova stringa:
Esempio: ff = "F.Fitzgerald" ff = "F. Scott Fitzgerald"
5.4 Concatenazione di stringhe
È possibile utilizzare l'operatore di addizione per combinare due o più stringhe insieme. Il risultato è una nuova stringa composta dai caratteri della prima stringa più i caratteri delle altre stringhe.
Esempio: "gatto" "nel" "cappello"
5.5 Moltiplicazione di stringhe
È possibile utilizzare l'operatore di moltiplicazione per moltiplicare stringhe e numeri.
Esempio: "Sayer" * 3 >>SawyerSawyerSawyer
5.6 Cambiare caso
È possibile utilizzare il metodo upper di una stringa per modificare ogni carattere della stringa in maiuscolo.
Esempio: "Noi riteniamo queste verità...".upper( ) >>'NOI ABBIAMO QUESTE VERITÀ...'
È possibile utilizzare il metodo lower di una stringa per modificare ogni carattere della stringa in minuscolo.
Esempio: "COSÌ VA.".lower( ) >>'così va.'
È possibile utilizzare il metodo maiuscolo di una stringa per modificare la prima lettera della stringa in maiuscolo.
Esempio: "quattro perlustrazioni e...".capitalize( ) >>"Quattro perlustrazioni e..."
5.7 Formattazione
Puoi utilizzare il metodo format per creare una nuova stringa, che sostituirà "{ }" nella stringa con la stringa passata.
Esempio: "Guglielmo { }".format("Faulkner") >>"William Faulkner"
Puoi anche utilizzare il metodo format per passare variabili come parametri:
Esempio: ultimo = "Faulkner" "William { }".format(ultimo) >>"William Faulkner"
Le parentesi graffe ({ }) possono essere utilizzate ripetutamente:
Esempio: autore = "William Faulkner" anno_nato = "1897" "{ } è nato nel { }."formato.(autore, anno_nato) >>"William è nato nel 1897."
Il metodo format è utile se desideri creare una stringa in base all'input dell'utente:
Esempio: n1 = input("Inserisci un sostantivo:") v = input("Inserisci un verbo:") adj = input("Inserisci un agg.:") n2 = input("Inserisci un sostantivo:") r = """Il { } { } il { } { } """.format(n1, v, agg, n2) stampa(r) >> Inserisci un sostantivo:
5.8 Divisione
Il metodo split può essere utilizzato per dividere una stringa in due o più stringhe.
È necessario passare una stringa come parametro del metodo split e utilizzarla per dividere la stringa originale in più stringhe.
Esempio: "Ho saltato sopra la pozzanghera. Era alta 12 piedi!".split(".") >>["Ho saltato sopra la pozzanghera","Era 12 piedi!"]
Il risultato della suddivisione è un elenco contenente due elementi: una stringa composta da tutti i caratteri prima del punto e una stringa composta da tutti i caratteri dopo il punto.
5.9 Connessione
Il metodo join aggiunge nuovi caratteri tra ciascun carattere della stringa.
Esempio: primo_tre = "abc" risultato = " ".join(primo_tre) stampa(risultato) >>"abc"
Il metodo join può essere chiamato su una stringa vuota o su una stringa contenente caratteri di spazio bianco, passando un elenco di stringhe come argomenti, concatenando così queste stringhe in un'unica stringa.
Esempio: parole = ["Il", "volpe", "saltato", "Sopra", "IL", "recinzione", "."] uno = "".join(parole) quelli = " ".join(parole) stampa(uno) stampa(quelli) >>La volpe saltò oltre il recinto. >>La volpe saltò oltre il recinto.
5.10 Rimuovere gli spazi
Utilizzare il metodo strip per rimuovere i caratteri di spazio bianco all'inizio e alla fine di una stringa.
Esempio: s = "Il" s = s.striscia() stampa(e) >>Il
5.11 Sostituzione
replace, il primo parametro è la stringa da sostituire e il secondo parametro è la stringa utilizzata per sostituire. È possibile utilizzare la seconda stringa per sostituire lo stesso contenuto della prima stringa nella stringa originale.
Esempio: equ = "Tutti gli animali sono uguali." equ = equ.sostituisci("a","@") stampa(equivalente)
5.12 Indice di ricerca
È possibile utilizzare il metodo indice per ottenere l'indice della prima occorrenza di una stringa in una stringa.
Passa il carattere che vuoi trovare come parametro e il metodo indice può restituire l'indice della prima occorrenza nella stringa:
Esempio: print("animali".index("m")) >>3
Se non sei sicuro che esista un risultato corrispondente, puoi utilizzare il seguente metodo di gestione delle eccezioni:
Esempio: frutti = ["pera","mela","banana","pesca","uva"] n = input("Inserisci il nome del frutto:") #Prova a trovare il recupero del nome del frutto inserito Tentativo: print(frutta.indice(n)) tranne: print("Non trovato") >>Inserisci il nome del frutto: banana >>2
5.13 nella parola chiave
La parola chiave in può verificare se una stringa si trova in un'altra stringa e il risultato restituito è True o False:
Esempio: print("Gatto" in "Il gatto nel cappello.")
Aggiungi la parola chiave not before in per verificare se una stringa non si trova in un'altra stringa.
5.14 Escape delle stringhe
L'escape delle stringhe (escape) si riferisce all'aggiunta di un simbolo prima di un carattere con un significato speciale in Python per dire a Python che il simbolo rappresenta un carattere in questo caso e non ha alcun significato speciale.
Escape con barra rovesciata in Python.
5.15 Carattere di nuova riga
Aggiungi alla stringa per indicare una nuova riga:
Esempio: print("riga1 riga2 riga3") >>riga1 >>riga2 >>riga3
5.16 Affettare
L'affettamento crea un nuovo oggetto iterabile da un sottoinsieme di elementi in un oggetto iterabile.
Esempio: fict = ["Tolstoj", "Camus", "Orwell", "Huxley", "Austin"] stampa(finzione[0:3]) >>['Tolstoj', 'Camus', 'Orwell']
Sintassi: [Oggetto iterabile] [[Indice iniziale: Indice finale]]
L'indice iniziale è l'indice in corrispondenza del quale inizia l'affettatura.
L'indice finale è la posizione dell'indice finale.
Nota: 1. Una sezione include elementi nella posizione dell'indice iniziale, ma non include elementi nella posizione dell'indice finale; 2. Se l'indice iniziale è 0, la posizione dell'indice iniziale può essere lasciata vuota; 3. Se l'indice finale è l'indice dell'ultimo elemento nell'oggetto iterabile, è possibile lasciare vuota la posizione dell'indice finale; 4. Se sia l'indice iniziale che l'indice finale vengono lasciati vuoti, verrà restituito l'oggetto iterabile originale.
Capitolo 6 Ciclo
Significato del ciclo: codice che non interrompe l'esecuzione finché non viene soddisfatta una condizione definita nel codice.
6.1 per ciclo
Sintassi: "for [nome variabile] in [nome oggetto iterabile]: [istruzione]"
[Nome variabile]: è il nome della variabile che si prevede di assegnare al valore di ciascun elemento nell'oggetto iterabile;
[Istruzione]: È il codice da eseguire in ogni ciclo.
Funzione:
Un ciclo che attraversa un oggetto iterabile.
Esempio (utilizzando un ciclo for per scorrere gli elementi dell'elenco): mostra = ["OTTENUTO", "Narcos", "vice"] per lo spettacolo negli spettacoli: stampa(mostra) >> CAPITO >>Narcos >>vizio
Puoi anche usare i cicli for per modificare gli elementi in oggetti mutabili e iterabili.
Esempio: tv = ["OTTIMO", "Narcos", "Vice"] io = 0 per lo spettacolo in TV: nuovo = tv[i] nuovo = nuovo.upper() tv[i] = nuovo io=1 stampa(tv) >>['GOT', 'NARCOS', 'VICE']
Puoi anche utilizzare un ciclo for per passare dati tra oggetti mutabili e iterabili.
Esempio: tv = ["OTTENUTO","Narcos","Vice"] coms = ["Arrestato","Sviluppo","amici","Sempre soleggiato"] tutti_spettacoli = [] per lo spettacolo in TV: mostra = mostra.upper() all_shows.append(mostra) per lo spettacolo in com: mostra = mostra.upper() all_shows.append(mostra) stampa(tutti_spettacoli) >>['GOT', 'NARCOS', 'VICE', 'ARRESTATO', 'SVILUPPO', 'AMICI', 'SEMPRE SUNNY']
6.2 funzione di portata
funzione range: e funzione incorporata che crea una sequenza di numeri interi.
grammatica:
La funzione range accetta due parametri: il numero del momento della sequenza e il numero finale.
La sequenza di interi restituita dalla funzione range contiene tutti i numeri interi dal primo al secondo parametro (escluso il secondo parametro).
Esempio (utilizzare la funzione range per creare una sequenza di numeri e scorrere su di essa): per i nell'intervallo(1,11): stampa(i) >>1 ... >>9 >>10
6.3 ciclo while
while loop: è un ciclo che esegue il codice finché l'espressione restituisce True.
Sintassi: "mentre [espressione]: [esegui codice]"
"[espressione]" è l'espressione che determina se il ciclo continua.
"[Codice di esecuzione]" è il codice che verrà eseguito finché il ciclo continua.
Ciclo infinito: se l'espressione di un ciclo while definito restituisce sempre True, l'esecuzione del ciclo non verrà mai interrotta. Un ciclo che non smette mai di funzionare è detto anche ciclo infinito.
6.4 Dichiarazione di interruzione
istruzione break: può essere utilizzata per terminare il ciclo.
Ogni volta che Python incontra un'istruzione break, il ciclo termina.
Esempio: qs = ["Come ti chiami?", "Qual è il tuo colore preferito?", "Qual è la tua ricerca?"] n = 0 mentre Vero: print("Digita q per uscire") a = ingresso(qs[n]) se a == "q": rottura n = (n1)%3 >>Digita q per uscire >>Come ti chiami?
Ad ogni ciclo, il programma porrà all'utente una domanda dall'elenco qs. Tra questi, n è la variabile indice. Ogni ciclo assegnerà il valore dell'espressione (n 1)%3 a n, che consente al programma di scorrere le domande nell'elenco qs.
6.5 continuare la dichiarazione
istruzione continue: è possibile utilizzare l'istruzione con la parola chiave continue per terminare l'iterazione corrente del ciclo e procedere all'iterazione successiva.
Esempio 1: #Ottieni "stampa tutti i numeri da 1 a 5 tranne 3" tramite il ciclo for e continua l'istruzione. per i nell'intervallo (1,6): se io == 3: continuare stampa(i) >>1 >>2 >>4 >>5
Quando il valore di i è uguale a 3, il programma esegue l'istruzione continue, ma non terminerà completamente il ciclo come fa la parola chiave break. Invece, continuerà all'iterazione successiva, saltando altro codice che dovrebbe essere eseguito. Quando i è uguale a 3, Python eseguirà l'istruzione continue invece di stampare 3.
Esempio 2: #Ottieni "stampa tutti i numeri da 1 a 5 tranne 3" attraverso il ciclo while e l'istruzione continue. io=1 mentre io <= 5: se io == 3: io=1 continuare stampa(i) io=1 >>1 >>2 >>4 >>5
6.6 Cicli nidificati
Cicli nidificati: i cicli possono essere combinati in molti modi.
Puoi aggiungere un altro loop all'interno di un loop o persino aggiungere un loop all'interno del loop aggiunto.
Non esiste alcun limite al numero di loop che possono essere nidificati all'interno di un loop
Un ciclo che contiene un ciclo al suo interno è chiamato ciclo esterno.
I cicli nidificati sono chiamati cicli interni
Quando sono presenti cicli nidificati, il ciclo esterno non attraversa una volta e il ciclo interno attraversa tutti gli elementi nel suo oggetto iterabile.
Esempio: #Utilizza due cicli for per aggiungere tutti i numeri di una lista a tutti i numeri dell'altra lista lista1 = [1,2,3,4] lista2 = [5,6,7,8] aggiunto = [] per i nella lista1: per j nella lista2: aggiunto.append(i j) stampa(aggiunto) >>[6, 7, 8, 9, 7, 8, 9, 10, 8, 9, 10, 11, 9, 10, 11, 12]
Per il primo ciclo itera su ogni intero nell'elenco list1, il secondo ciclo itera su ogni intero nel proprio iterabile e lo aggiunge al numero in list1 e quindi aggiunge il risultato all'elenco aggiunto.
6.7 Glossario
Loop: una sezione di codice che continua ad essere eseguita finché non viene soddisfatta una condizione definita nel codice.
Attraversamento: utilizza un ciclo per accedere a ciascun elemento in un oggetto iterabile.
Ciclo for: un ciclo utilizzato per scorrere oggetti iterabili come stringhe, elenchi, tuple o dizionari.
Variabile indice: il valore della variabile è un numero che rappresenta l'indice nell'oggetto iterabile.
Ciclo while: ciclo che continua ad essere eseguito finché il valore dell'espressione è True.
Ciclo infinito: un ciclo che non finisce mai.
istruzione break: un'istruzione con la parola chiave break, utilizzata per terminare il ciclo.
istruzione continue: un'istruzione con la parola chiave continue, utilizzata per terminare l'iterazione corrente del ciclo e accedere all'iterazione successiva.
Ciclo esterno: un ciclo che contiene cicli nidificati al suo interno.
Ciclo interno: un ciclo nidificato all'interno di un altro ciclo.
Capitolo 7 Moduli
Il significato del modulo:
Per facilitare la lettura e il controllo del programma, i programmi di grandi dimensioni sono divisi in più file contenenti codice Python, chiamati moduli.
7.1 Importare moduli integrati
Importazione: prima di utilizzare un modulo, è necessario prima importarlo, il che significa scrivere codice per far sapere a Python dove trovare il modulo.
Sintassi di importazione: import[nome modulo].
Dopo aver importato un modulo, puoi utilizzare le sue variabili e funzioni.
Modulo integrato: viene fornito con il linguaggio Python e contiene molte funzioni importanti.
7.2 Importare altri moduli
Crea modulo
Crea una nuova cartella sul tuo computer. Nella cartella, crea un nuovo file .py Python, aggiungi il codice al file .py Python e segnala il file.
Importa (importa) Come sopra
7.3 Glossario
Modulo: un altro nome per un file Python contenente codice.
Moduli integrati: moduli forniti con il linguaggio Python, incluse molte funzioni importanti.
Importa: scrivi codice che indica a Python dove importare il modulo che intendi utilizzare.
Capitolo 8 Documentazione
8.1 Operazione di scrittura del file
Il primo passo per lavorare con i file è aprire il file utilizzando la funzione open integrata di Python.
La funzione open ha due parametri:
Una stringa che rappresenta il percorso del file da aprire.
Il percorso del file si riferisce alla posizione del file sul computer. Ad esempio, /Users/bob/st.txt è il percorso del file st.txt. Ogni parola separata da una barra è il nome di una cartella.
Se il percorso del file contiene solo il nome del file (nessuna cartella separata da slash), Python cercherà il file nella directory in cui si trova il programma attualmente in esecuzione.
Per evitare errori quando il programma viene eseguito su sistemi operativi diversi, è necessario utilizzare il modulo del sistema operativo integrato per creare il percorso del file.
esempio di modulo del sistema operativo: importare il sistema operativo os.path.join("Utenti","bob","st.txt") >>"Utenti/bob/st.txt
L'utilizzo della funzione percorso per creare un percorso file garantisce che funzionerà correttamente su qualsiasi sistema difettoso.
Rappresenta la modalità in cui viene aperto il file.
La modalità del parametro passato alla funzione open determina quali operazioni vengono eseguite sul file aperto:
"r" apre il file in modalità di sola lettura.
"w" apre il file in modalità di sola scrittura. Se il file esiste già, il file verrà sovrascritto. Se il file non esiste, viene creato un nuovo file.
"w "Apre il file in modalità leggibile e scrivibile. Se il file esiste già, il file verrà sovrascritto. Se il file non esiste, viene creato un nuovo file.
La funzione open restituisce un oggetto chiamato oggetto file, che può essere utilizzato per leggere/scrivere file.
È possibile utilizzare il metodo di scrittura dell'oggetto file per scrivere nel file e chiudere il file tramite il metodo di chiusura.
Se il file viene aperto utilizzando la funzione open, deve essere chiuso tramite il metodo close.
8.2 Chiudi automaticamente i file
La sintassi per aprire un file utilizzando l'istruzione with è: "con open([percorso file]),[modalità]) come [nome variabile]:[codice di esecuzione]"
[Percorso file] rappresenta la posizione del file
[Modalità] rappresenta la modalità in cui aprire il file
[Nome variabile] rappresenta il nome della variabile assegnato all'oggetto file.
[Codice di esecuzione] è il codice che deve accedere alle variabili oggetto del file
Esempio: con open ("st.txt","w") come f : f.write("Ciao da Python!")
Finché è ancora all'interno dell'istruzione with, è possibile accedere all'oggetto file.
8.3 Lettura di file
Se vuoi leggere un file, puoi passare "r" come secondo parametro della funzione open. Quindi chiamare il metodo read dell'oggetto file restituirà un oggetto iterabile contenente tutte le righe del file.
8.4 File CSV
Il suffisso del file CSV è .csv, che utilizza virgole inglesi per separare i dati (CSV è l'abbreviazione inglese di valori separati da virgole).
I file CSV vengono spesso utilizzati dai programmatori che necessitano di gestire software di reporting come Excel.
Ogni dato separato da virgole nel file CSV rappresenta una cella nel report e ogni riga rappresenta una riga del report.
Il delimitatore è un simbolo utilizzato per separare i dati nei file CSV, come una virgola o una barra verticale "|".
8.5 Glossario
Leggi: accedi al contenuto del file.
Scrivi: aggiungi o modifica i dati nel file.
Percorso file: la posizione sul computer in cui è archiviato il file.
with istruzione: un'istruzione composta che esegue automaticamente un'operazione quando Python esce dall'istruzione.
Oggetto file: un oggetto che può essere utilizzato per leggere e scrivere file.
File CSV: file con suffisso .csv, che utilizza virgole per separare i dati. Comunemente utilizzato nei programmi che gestiscono i report.
Delimitatore: il simbolo utilizzato per separare i dati nei file CSV, ad esempio le virgole.
Parte 2 Introduzione alla programmazione orientata agli oggetti
Capitolo 9 Paradigmi di programmazione
Paradigma di programmazione (paradigma del programma), ovvero stile di programmazione.
9.1 Stato
Una delle differenze fondamentali tra i diversi paradigmi di programmazione è il trattamento dello stato.
Lo stato è il valore delle sue variabili interne quando il programma è in esecuzione.
Lo stato globale è il valore delle variabili globali interne del programma quando è in esecuzione.
9.2 Programmazione procedurale
Programmazione procedurale: questo stile di programmazione richiede di scrivere una serie di sussidi per risolvere un problema, ogni passaggio modifica lo stato del programma.
Nella programmazione procedurale, memorizziamo i dati in variabili globali e li elaboriamo tramite funzioni.
Poiché lo stato del programma è memorizzato in variabili globali, potrebbero sorgere problemi se il programma diventa più grande.
Le variabili globali possono essere utilizzate in più funzioni ed è difficile registrare dove è stata modificata una variabile globale. Può danneggiare gravemente la precisione dei dati del programma.
Man mano che il programma diventa sempre più complesso, il numero di variabili globali aumenterà gradualmente. Inoltre, il programma dovrà aggiungere continuamente nuove funzioni e modificare le variabili globali, quindi presto il programma diventerà ingestibile.
Le procedure sono effetti collaterali della programmazione, uno dei quali è il cambiamento dello stato delle variabili globali.
9.3 Programmazione funzionale
Programmazione funzionale: il linguaggio di programmazione generico più piccolo al mondo.
La programmazione funzionale risolve i problemi che sorgono nella programmazione procedurale eliminando lo stato globale.
I programmatori funzionali si affidano a funzioni che non si applicano o non modificano lo stato globale che utilizzano sono gli argomenti passati alla funzione;
Vantaggi e svantaggi
Vantaggio: Elimina tutti gli errori causati dallo stato globale (lo stato globale non esiste nella programmazione funzionale).
Svantaggi: alcuni problemi sono più facili da concettualizzare attraverso gli stati.
9.4 Programmazione orientata agli oggetti
Il paradigma di programmazione orientato agli oggetti risolve anche i problemi causati dalla programmazione procedurale eliminando lo stato globale, ma invece di utilizzare le funzioni, utilizza gli oggetti per salvare lo stato.
Una classe definisce una serie di oggetti che possono interagire tra loro.
Le classi sono un mezzo con cui i programmatori classificano e raggruppano oggetti simili.
Ogni oggetto è un'istanza di una classe.
Quando una classe viene definita, tutte le istanze della classe sono simili: tutte hanno gli attributi definiti nella classe, ma i valori degli attributi specifici di ciascuna istanza sono diversi.
In Python, una classe è un'istruzione composta che contiene un'intestazione e un corpo.
Sintassi: class [nome classe]: [corpo del codice].
[Nome classe] è il nome della classe.
Convenzione: i nomi delle classi in Python iniziano tutti con una lettera maiuscola e utilizzano la denominazione camel case.
Nomenclatura CamelCase: ovvero, se il nome della classe è composto da più parole, la prima lettera di ciascuna parola dovrebbe essere in maiuscolo (come LikeThis, anziché separata da trattini bassi (convenzione di denominazione per le funzioni)).
[Corpo del codice] è il codice specifico della classe definita.
Il corpo del codice in una classe può essere una singola istruzione o un'istruzione composta denominata metodo.
I metodi sono simili alle funzioni, ma poiché sono definiti in una classe, possono essere chiamati solo su oggetti creati dalla classe.
I nomi dei metodi seguono le regole di denominazione delle funzioni, sono tutti in minuscolo e separati da trattini bassi.
La differenza tra definizione del metodo e definizione della funzione:
I metodi devono essere definiti all'interno della classe;
Deve accettare almeno un parametro (tranne casi particolari).
Per convenzione il primo parametro di un metodo si chiama sempre self.
Quando crei un metodo, devi definire almeno un parametro, perché quando chiami un metodo su un oggetto, Python passerà automaticamente l'oggetto del metodo chiamante come parametro.
9.5 Glossario
Paradigma di programmazione: stile di programmazione.
Stato: il valore delle variabili all'interno del programma quando è in esecuzione.
Stato globale: il valore delle variabili globali all'interno del programma quando è in esecuzione.
Programmazione procedurale: questo stile di programmazione richiede la scrittura di una serie di passaggi per risolvere un problema, ciascuno dei quali modifica lo stato del programma.
Programmazione funzionale: la programmazione funzionale elimina lo stato globale attraverso il trasferimento di funzioni e risolve i problemi che sorgono nella programmazione procedurale.
Effetti collaterali: modifica del valore delle variabili globali.
Orientato agli oggetti: un paradigma di programmazione che definisce oggetti che possono interagire tra loro.
Classe: un mezzo utilizzato dai programmatori per classificare e raggruppare oggetti simili.
Metodo: simile a una funzione, ma è definito nella classe e può essere chiamato solo su oggetti creati dalla classe.
Istanza: ogni oggetto è un'istanza di una classe. Ogni istanza di una classe ha lo stesso tipo di dati delle altre istanze della classe.
Variabili di istanza: variabili che appartengono a un oggetto.
Metodi magici: metodi utilizzati da Python in situazioni speciali, come l'inizializzazione di oggetti.
Istanziazione di una classe: crea un nuovo oggetto utilizzando una classe.
Capitolo 10 I quattro pilastri della programmazione orientata agli oggetti
concetto.
Ci sono quattro concetti principali nella programmazione orientata agli oggetti:
incapsulamento
L'incapsulamento include due concetti.
Il primo concetto, nella programmazione orientata agli oggetti, è che un oggetto raccoglie variabili (stato) e metodi (usati per cambiare stato o eseguire calcoli che coinvolgono lo stato) in un unico posto: l'oggetto stesso.
Il secondo concetto si riferisce al nascondere i dati interni di una classe per evitare l'accesso diretto da parte del codice client (cioè codice esterno alla classe).
astratto
L'astrazione si riferisce al processo di "eliminazione di molte caratteristiche di qualcosa in modo che mantenga solo le sue qualità più basilari". Nella programmazione orientata agli oggetti, le tecniche di astrazione vengono utilizzate quando si utilizzano le classi per modellare gli oggetti.
Polimorfismo
Il polimorfismo si riferisce alla "capacità di fornire interfacce correlate per diversi moduli di base (tipi di dati)". L'interfaccia si riferisce a funzioni o metodi.
ereditare
L'ereditarietà nel contesto di programmazione è simile all'eredità genetica. Quando viene creata una classe, la classe può anche ereditare metodi e variabili da un'altra classe.
La classe ereditata diventa la classe genitore (classe genitore)
Le classi ereditate sono chiamate classi figlie
Quando una sottoclasse eredita un metodo da una classe genitore, possiamo sovrascrivere il metodo nella classe genitore definendo un nuovo metodo con lo stesso nome del metodo ereditato. La capacità di una sottoclasse di modificare l'implementazione dei metodi ereditati da una classe genitore è chiamata overrding del metodo.
Composizione: attraverso la tecnica della combinazione, un oggetto viene salvato come variabile in un altro oggetto e la "propria" relazione può essere modellata.
Glossario
I quattro pilastri della programmazione orientata agli oggetti: incapsulamento, astrazione, polimorfismo ed ereditarietà.
Eredità: nel riepilogo dell'eredità genetica, i bambini erediteranno caratteristiche come il colore degli occhi dai loro genitori. Allo stesso modo, quando viene creata una classe, può ereditare metodi e variabili da un'altra classe.
Classe genitore: la classe ereditata.
Sottoclasse: una classe che eredita da una classe genitore.
Override del metodo: una sottoclasse modifica la capacità di implementare metodi ereditati dalla classe genitore.
Polimorfismo: si riferisce alla capacità di fornire interfacce rilevanti per diversi moduli di base (tipi di dati).
Astrazione: si riferisce al processo di eliminazione di molte caratteristiche di qualcosa in modo che mantenga solo le sue qualità più basilari.
Codice client: codice esterno alla classe dell'oggetto applicabile.
Incapsulamento: l'incapsulamento include due concetti. Il primo concetto è che gli oggetti nella programmazione orientata agli oggetti raccolgono variabili (stato) e metodi (usati per cambiare stato o eseguire calcoli che coinvolgono lo stato) in un unico posto: l'oggetto stesso. Il secondo concetto si riferisce al nascondere i dati interni di una classe dall'accesso diretto da parte del codice client.
Combinazione: attraverso la tecnica della combinazione, un oggetto viene salvato come variabile in un altro oggetto e la "propria" relazione può essere modellata.
Capitolo 11 Programmazione approfondita ad oggetti
11.1 Variabili di classe e variabili di istanza
In Python, le classi sono oggetti. Ogni classe in Python è un oggetto istanza del tipo class.
Ci sono due tipi di variabili in una classe:
variabile di classe
Le variabili di classe appartengono agli oggetti che Python crea per ogni definizione di classe, così come agli oggetti creati dalla classe stessa.
Le variabili di classe sono definite allo stesso modo delle variabili ordinarie (ma devono essere definite all'interno della classe) ed è possibile accedervi tramite oggetti di classe o tramite oggetti creati utilizzando la classe.
Il metodo di accesso è lo stesso delle variabili di istanza (con il prefisso self. nel nome della variabile).
Le variabili di classe consentono la condivisione dei dati tra tutte le istanze di una classe senza l'uso di variabili globali.
variabile di istanza
Le variabili di istanza sono definite con la sintassi self.[nome variabile]=[valore variabile].
11.2 è
Se i due oggetti sono lo stesso oggetto, la parola chiave restituisce True, altrimenti restituisce False.
Puoi verificare se una variabile è None utilizzando la parola chiave is.