<jupyter_start><jupyter_text>ESERCIZIO 10 - Creazione, accesso e aggiornamento di una listaCreare una lista di 6 elementi in cui sia presente almeno un valore intero, un valore decimale, una stringa e un valore booleano. Accedere al terzo elemento e in seguito aggiornarlo con la stringa **gatto**. Accedere poi alla sottolista che va dal secondo al quarto elemento e aggiornarla con la lista vuota.Verificare poi:- se il secondo elemento della lista è diverso dall'intero 345- se l'intero 345 è presente nella lista- se due elementi a scelta sono presenti contemporaneamente nella lista - se almeno uno tra due elementi a scelta è presente nella lista  SoluzioneAlla variabile `lista` vengono assegnati i 6 elementi usando la sintassi con le parentesi quadre `[]`<jupyter_code>lista = [345, 'ciao', 10.24, 3.14, 90, False]<jupyter_output><empty_output><jupyter_text>La dimensione della lista viene ottenuta chiamando la funzione `len()` e passando come argomento la variabile `lista` che contiene la lista. Il valore restituito dalla funzione viene assegnato alla variabile `lunghezza`<jupyter_code>lunghezza = len(lista)
lunghezza<jupyter_output><empty_output><jupyter_text>Il terzo elemento della lista è quello nella posizione di indice (positivo) 2<jupyter_code>lista[2]<jupyter_output><empty_output><jupyter_text>In alternativa, si può accedere al terzo elemento della lista tramite l'indice negativo pari a `-lunghezza+2`<jupyter_code>lista[-lunghezza+2]<jupyter_output><empty_output><jupyter_text>Con la stessa sintassi di accesso a un elemento si aggiorna il terzo elemento con la stringa **gatto**<jupyter_code>lista[2] = 'gatto'<jupyter_output><empty_output><jupyter_text>Il contenuto della variabile `lista` è ora<jupyter_code>lista<jupyter_output><empty_output><jupyter_text>Per accedere alla sottolista che va dal secondo al quarto elemento basta utilizzare la sintassi di *slicing* specificando all'interno delle parentesi quadre [] l'indice del secondo elemento (cioé 1) e l'indice dell'elemento successivo al quarto (cioé il quinto a cui corrisponde l'indice positivo 4) separati dal simbolo `:`<jupyter_code>lista[1:4]<jupyter_output><empty_output><jupyter_text>A questo punto si può sostituire in `lista` questa sottolista con la lista vuota<jupyter_code>lista[1:4] = []<jupyter_output><empty_output><jupyter_text>Il contenuto della lista è ora<jupyter_code>lista<jupyter_output><empty_output><jupyter_text>Per verificare se il secondo elemento della lista è diverso dall'intero 345 basta usare l'operatore `!=` con a destra l'intero 345 e a sinistra la sintassi di accesso al secondo elemento in `lista`. Il risultato della valutazione è un valore booleano (`True` o `False`)<jupyter_code>lista[1] != 345<jupyter_output><empty_output><jupyter_text>Per verificare la presenza di un elemento all'interno della lista basta usare l'operatore `in` con a destra l'elemento di cui verificare la presenza e a sinistra la variabile `lista` che contiene la lista. Il risultato della valutazione è un valore booleano (`True` o `False`)<jupyter_code>345 in lista<jupyter_output><empty_output><jupyter_text>Per verificare la presenza contemporanea di due elementi basta usare l'operatore di congiunzione logica `and`<jupyter_code>345 in lista and 10.42 in lista<jupyter_output><empty_output><jupyter_text>Per verificare la presenza di almeno uno tra due elementi basta usare l'operatore di disgiunzione logica `or`<jupyter_code>345 in lista or 10.42 in lista<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.0709585121602289, 'fraction_numerical': 0.017167381974248927, 'mean_word_length': 7.187353629976581, 'pattern_counts': {'":': 0, '<': 53, '<?xml version=': 0, '>': 53, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '13', 'dir': 'jupyter-structured-clean-dedup', 'id': '624735', 'license': 'MIT', 'n_tokens_mistral': 1236, 'n_tokens_neox': 1257, 'n_words': 400, 'path': 'lezione1/soluzione-esercizi/ipynb/ES10-CreazioneLista.ipynb', 'repo_name': 'DavideMaspero/python-alfabetizzazione-docenti', 'size': '3495'}