Esercizi svolti sulle liste in Python

Esercizi svolti sulle liste in Python

In questa lezione spiegheremo alcuni esercizi svolti sulle liste in Python.

Esercizi svolti sulle liste in Python – primo esercizio

Popolare una lista di n elementi con i primi n multipli di 10. I numeri devono essere inseriti in coda alla lista.
Dopo l’inserimento visualizzare in output i valori della lista e il relativo indice.
Poi modificare solo gli elementi maggiori di 30 sottraendo la metà del numero. Visualizzare nuovamente la lista.

Una volta acquisito n occorre generare in automatico i multipli di 10 da inserire.

Ad esempio se n=5 allora la lista dovrà contenere questi valori:

0*10, 1*10, 2*10, 3*10, 4*10

Quindi posso assumere una costante che vale 10 e una variabile che cambia valore da 0 fino ad arrivare a 4.

Quest’ultima variabile può essere rappresentata direttamente dall’indice i del ciclo for.

Dopo aver popolato la lista e aver visualizzato gli elementi con l’indice (attenzione l’esercizio chiede di visualizzare la lista dopo aver inserito tutti gli elementi, quindi occorre usare un altro ciclo for che scorre la lista), modifichiamo gli elementi maggiori di 30 togliendo metà del numero.

Infine, dopo le modifiche, visualizziamo nuovamente la lista.

Ecco dunque una possibile soluzione:

n=int(input('Inserisci la quantità di numeri da inserire:'))
l=[]
c=10

for i in range(n):
    l.append(i*c)

#visualizzo gli elementi e l'indice
for i in range(n):
    print('Elemento in posizione ', i, 'ha valore', l[i])

#modifico gli elementi maggiori di 30
for i in range(n):
    if l[i]>30:
        l[i]//=2

#visualizzo gli elementi modificati e l'indice
for i in range(n):
    print('Elemento in posizione ', i, 'ha valore', l[i])

Vi propongo adesso altri esercizi sulle liste in Python.

Esercizi svolti sulle liste in Python – secondo esercizio

Dati due numeri, a e b, costruire una lista con una sequenza ascendente dal primo al secondo numero compreso. I numeri devono essere inseriti in testa alla lista. Dopo l’inserimento visualizzare la lista con il relativo indice.
Modificare poi ciascun elemento moltiplicandolo per 2. Infine visualizzare la lista modificata.

N.B. Se b è più piccolo di a si visualizzerà la lista vuota.

La difficoltà iniziale sta nell’utilizzo del metodo insert per inserire i numeri in testa alla lista.

Dunque per inserire una sequenza ascendente che va da a a b, utilizzando insert, devo prima inserire il numero più alto e cioè b.

Ecco perché conviene semplicemente invertire il range del for.

for i in range(b,a-1,-1):
    numeri.insert(0,i)

Quindi se ad esempio a=5 e b=10 allora devo avere in output la lista numeri=[5,6,7,8,9,10].

Per fare ciò considero il range con i che va da 10 a 5 a step di -1.

Il primo numero inserito in testa alla lista sarà dunque 10, poi 9, poi 8 e così via.

N.B. Utilizzando append posso semplicemente scrivere così:

for i in range(a,b+1):
    numeri.append(i)

Ma l’esercizio richiedeva l’uso di insert.

Dopo modifico semplicemente la lista moltiplicando per 2 ciascun elemento.

Ecco dunque il codice completo:

numeri=[]

a=int(input('inserire un numero'))
b=int(input('inserire un numero'))

for i in range(b,a-1,-1):
    numeri.insert(0,i)
    
for i in range(len(numeri2)):
    print(i,numeri[i])

#lista modificata

for i in range(len(numeri)):
    numeri[i]*=2

for i in range(len(numeri)):
    print(i,numeri[i])

Conclusioni

In questa sezione abbiamo affrontato alcuni esercizi svolti sulle liste in Python, nella prossima lezione ne propongo degli altri.

Alcuni link utili

Indice tutorial sul linguaggio Python

1 – Introduzione al linguaggio Python

2 – Le variabili

3 – Operatori aritmetici e di assegnazione

4 – Stringhe

5 – Casting

6 – Input e print

7 – Primi esercizi in Python

8 – Errori in Python

9 – Script Python

10 – Scambio di variabili

Bootstrap alerts

Bootstrap alerts

In questo tutorial parleremo di Bootstrap alerts, ovvero di come creare dei messaggi di avviso in maniera automatica utilizzando apposite classi.

Utilizzo di Bootstrap alerts

Quindi è possibile utilizzare le seguenti classi:

alert-success crea un riquadro con i bordi arrotondati con sfondo verde e testo nero

alert-info crea un riquadro con i bordi arrotondati con sfondo verde e testo nero

alert-warning crea un riquadro con i bordi arrotondati con sfondo arancione e testo nero

alert-danger crea un riquadro con i bordi arrotondati con sfondo rosso e testo nero

alert-primary crea un riquadro con i bordi arrotondati con sfondo azzurro e testo nero

alert-secondary crea un riquadro con i bordi arrotondati con sfondo grigio chiaro e testo nero

alert-light crea un riquadro con i bordi arrotondati sfondo trasparente e testo nero

alert-dark crea un riquadro con i bordi arrotondati con sfondo grigio scuro e testo nero

Quindi provate ad inserire nel punto desiderato il seguente codice:

<div class="alert alert-success">Successo!</div>
<div class="alert alert-warning">Warning!</div>
<div class="alert alert-danger">Danger!</div>
<div class="alert alert-info">Danger!</div>
<div class="alert alert-primary">Primary!</div>
<div class="alert alert-secondary">Secondary!</div>
<div class="alert alert-light">Trasparente</div>
<div class="alert alert-dark">Sfondo scuro!</div>

In output visualizzerete i vari alert con le diverse formattazioni.

Chiusura di un alert

Si può anche chiudere l’alert cliccando sulla x. Basta inserire un pulsante che provoca l’effetto di chiusura della finestra.

Bisogna però aggiungere prima della chiusura di head il collegamento a jquery.

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>

E dopo creare un alert aggiungendo un pulsante con l’attributo data-dismiss posto uguale ad alert ad esempio in questo modo:

<div class="alert alert-success">
    <strong>Successo!</strong>
    <button type="button" class="close" data-dismiss="alert">&times</button>
</div>

Collegamento ipertestuale

Si possono inserire i collegamenti all’interno degli alert con la classe alert-link.

<div class="alert alert-success alert-dismissible fade show">
   <strong>Successo!</strong>
   <button type="button" class="close" data-dismiss="alert">&times;</button>
   <a href="#" class="alert-link">Collegamento</a>
</div>
<div class="alert alert-warning alert-dismissible fade show">
    Warning!
   <button type="button" class="close" data-dismiss="alert">&times;</button></div>
<div class="alert alert-danger alert-dismissible fade show">
   Danger!
   <button type="button" class="close" data-dismiss="alert">&times;</button></div>
<div class="alert alert-info alert-dismissible fade show">
  Danger!
  <button type="button" class="close" data-dismiss="alert">&times;</button></div>
<div class="alert alert-primary alert-dismissible fade show">
  Primary!
  <button type="button" class="close" data-dismiss="alert">&times;</button></div>
<div class="alert alert-secondary alert-dismissible fade show">
  Secondary!
  <button type="button" class="close" data-dismiss="alert">&times;</button></div>
<div class="alert alert-light alert-dismissible fade show">
  Trasparente!
  <button type="button" class="close" data-dismiss="alert">&times;</button></div>
<div class="alert alert-dark alert-dismissible fade show">
   Sfondo scuro!
   <button type="button" class="close" data-dismiss="alert">&times;</button></div>
			

Potete vedere un esempio d’uso degli alert alla seguente pagina web: esempio d’uso degli alert con Bootstrap.

In questa lezione abbiamo affrontato i Bootstrap alert, nella prossima lezione vedremo come inserire una progress bar.

Link utili

Indice argomenti tutorial Bootstrap

1 – Introduzione a Bootstrap

2 – Creazione del primo template

3 – Come inserire una Navbar

4 – Personalizzare la posizione del menù

5 – Come utilizzare il grid system

6 – Bootstrap Container

7 – Inserire lo slideshow di immagini con Carousel

8 – Come utilizzare le Bootstrap images

Bootstrap table

Bootstrap table

In questa lezione parleremo di Bootstrap table e di come gestire le tabelle in una pagina web.

Come utilizzare Bootstrap table

Innanzitutto è necessario inserire il tag div che conterrà la nostra tabella a cui assoceremo la classe container come al solito.

Dopo utilizziamo il tag table a cui assegneremo la classe table.

Quindi costruiamo la nostra tabella utilizzando i tag tr per la riga e td per la cella. Utilizzeremo inoltre th per le intestazioni di colonna e di riga.

Al tag th si può aggiungere l’attributo scope dando il valore col o row, il quale specifica che l’intestazione fa riferimento alla colonna o alla riga, ma attenzione questo attributo non è supportato dall’HTML5.s

Nel costruire la nostra tabella useremo anche i tag semantici thead e tbody. Dell’importanza di questi tag ne abbiamo parlato in questo articolo: tabelle in html.

Tabelle personalizzate

Nel nostro esempio al tag thead assegniamo la classe thead-dark per creare l’intestazione della tabella di colore grigio scuro e testo bianco.

Inoltre alla tabella assegniamo la classe table-striped per colorare di grigio, in maniera alternata, le righe.

Chiaramente si possono utilizzare delle classi personalizzate per creare degli effetti nuovi.

Ecco un esempio di possibile tabella con Bootstrap:

<table class="table table-striped">
      <thead class="thead-dark">
	    <tr>
		<th></th>
		<th>Linguaggi</th>
		<th>Tutorial</th>
	   </tr>
	</thead>
	<tbody>
	   <tr>
	       <th>1</th>					
	       <td>Bootstrap</td>
	       <td><a href="https://www.codingcreativo.it/tutorial-bootstrap/" target="blank">Tutorial Bootstrap</a></td>
	   </tr>
	   <tr>
	        <th>2</th>
		<td>HTML5</td>
		<td><a href="https://www.codingcreativo.it/tutorial-bootstrap/" target="blank">Tutorial HTML5</a></td>
	    </tr>
	    <tr>
		<th>3</th>
		<td>CSS3</td>
		<td><a href="https://www.codingcreativo.it/tutorial-bootstrap/" target="blank">Tutorial CSS3</a></td>
	    </tr>
	</tbody>
</table>

Potete visualizzare un esempio d’uso delle tabelle in questo link: tabelle Bootstrap.

Sfondi tabella, righe e celle

Così come abbiamo visto per i pulsanti si possono assegnare delle classi predefinite alle tabelle, righe o celle.

table-primary crea uno sfondo con sfondo blu e testo bianco.

table-secondary crea uno sfondo con sfondo grigio e testo bianco.

table-success crea uno sfondo con sfondo verde e testo bianco.

table-info crea uno sfondo con sfondo azzurro e testo bianco.

table-warning crea uno sfondo con sfondo arancione e testo nero.

table-danger crea uno sfondo con sfondo rosso e testo bianco.

table-light crea uno sfondo con sfondo grigio chiaro e testo nero.

table-dark crea uno sfondo con sfondo nero e testo bianco.

Oppure è possibile utilizzare anche le classi bg-primary, bg-success, ecc…

Bordo della tabella

Utilizzando la classe table-bordered si imposta il bordo alla tabella, mentre con table-borderless si elimina il bordo della tabella.

Tabelle responsive

E’ possibile creare delle tabelle responsive utilizzando la classe table-responsive{-sm|-md|-lg|-xl} dove al solito sm, md, lg, ed xl (quest’ultimo introdotto con Bootstrap 4) sono i breakpoint.

Questa classe deve essere assegnata al div.

Potete consultare i vari esempi sul sito ufficiale: tabelle con Bootstrap.

Link utili

Indice argomenti tutorial Bootstrap

1 – Introduzione a Bootstrap

2 – Creazione del primo template

3 – Come inserire una Navbar

4 – Personalizzare la posizione del menù

5 – Come utilizzare il grid system

6 – Bootstrap Container

7 – Inserire lo slideshow di immagini con Carousel

8 – Come utilizzare le Bootstrap images

Bootstrap icons

Bootstrap icons

In questa lezione parliamo di Bootstrap icons, cioè di come utilizzare le icone in Bootstrap con i Fontawesome e Glyphicons.

Bootstrap icons

Le icone si possono utilizzare nel testo, nei menù, nei form, nei pulsanti e in tanti altri elementi di una pagina web.

Ci sono tante piattaforme che mettono a disposizione queste icone in maniera gratuita, almeno per la versione base.

Glyphicons

Le prime Bootstrap icons, da poter utilizzare, che vi presento sono le Glyphicons.

Fino alla versione Bootstrap 3 trovavamo una cartella con le Glyphicons, ma nella nuova versione è stata tolta.

Si possono sempre utilizzare andando sul sito ufficiale glyphicons e andando a vedere le specifiche di utilizzo. Alcuni set di icone sono però a pagamento.

Quindi basta aggiungere il seguente codice tra il tag head:

<link rel="stylesheet" href="glyphicons/glyphicons.css">

E poi utilizzarle in un punto qualsiasi della pagina, inserendo la classe opportuna. Ad esempio per visualizzare la casetta della home posso utilizzare questo codice.

<span class="glyphicon glyphicon-home" aria-hidden="true"></span>

Oppure per la stampante ad esempio posso usare questo codice:

<span class="glyphicon glyphicon-print"></span>

Potete trovare il codice completo delle icone in questa pagina: glyphicons icone.

Fontawesome

Si possono utilizzare altre Bootstrap icons e le più utilizzare sono i Fontawesome.

Si può andare sul sito ufficiale di Fontawesome e scaricare tutta la cartella.

La cartella webfonts all’interno contiene i caratteri tipografici che il CSS utilizza.

Per utilizzare i fontawesome si può collegare il file all.css che contiene lo stile base più tutti gli stili icona.

Quindi provate ad inserire prima della chiusura del tag head il seguente codice:

<link href="fontawesome/css/all.css" rel="stylesheet">

Chiaramente mettete il vostro percorso al file.

Dopo per utilizzare le icone sarà sufficiente utilizzare il tag i con la classe opportuna.

<i class="fas fa-user"></i>
<i class="fas fa-hands"></i>
<i class="fas fa-hand-point-right"></i>

Per poter combina due icone e dunque creare una forma con un colore, si può sfruttare la potenza di SVG in Font Awesome.

Quindi al posto del precedente collegamento al file all.css inserisco sempre tra il tag head questo script:

<script defer src="fontawesome/js/all.js"></script>

E così è possibile inserire icone come questa:

<i class="fab fa-facebook-f" data-fa-transform="shrink-3.5 down-1.6 right-1.25" data-fa-mask="fas fa-circle" style="background:lightblue"></i>

Potete trovare la lista delle icone complete al seguente link: fontawesome.

Ecco un esempio di utilizzo di icone che ho realizzato a questo link: esempio di icone con Bootstrap.

In questa lezione abbiamo visto come utilizzare le Bootstrap icons ed in particolare Fontawesome e Glyphicons per inserire delle icone nelle nostre pagine web.

Si possono utilizzare altri font per le icone in Bootstrap, come ad esempio Octicons.

Link utili

Indice argomenti tutorial Bootstrap

1 – Introduzione a Bootstrap

2 – Creazione del primo template

3 – Come inserire una Navbar

4 – Personalizzare la posizione del menù

5 – Come utilizzare il grid system

6 – Bootstrap Container

7 – Inserire lo slideshow di immagini con Carousel

8 – Come utilizzare le Bootstrap images

Bootstrap buttons

Bootstrap buttons

In questa lezione parleremo dei Bootstrap buttons, e quindi di come aggiungere dei pulsanti nelle nostre pagine web.

Bootstrap ha differenti stili di buttons che visualizza tramite apposite classi.

Bootstrap buttons

Vediamo in dettaglio le varie classi:

btn crea un pulsante con uno stile di base.

btn-primary crea un pulsante con sfondo blu e testo bianco.

btn-secondary crea un pulsante con sfondo grigio e testo bianco.

btn-success crea un pulsante con sfondo verde e testo bianco.

btn-info crea un pulsante con sfondo azzurro e testo bianco.

btn-warning crea un pulsante con sfondo arancione e testo nero.

btn-danger crea un pulsante con sfondo rosso e testo bianco.

btn-light crea un pulsante con sfondo grigio chiaro e testo nero.

btn-dark crea un pulsante con sfondo nero e testo bianco.

btn-link crea un pulsante con sfondo trasparente e testo blu.

Come si utilizzano

Le classi dei Bootstrap buttons si utilizzano con il tag button ma possono essere utilizzate anche con il tag input oppure anche il tag a a cui però deve essere associato l’attributo role=”button” in modo da essere interpretati bene anche dagli screen reader.

Eliminare il riempimento

Se si vuole rimuovere il contorno dai pulsanti si possono utilizzare le classi btn-outline-dark, btn-outline-warning, ecc…

Dimensioni del pulsante

Se si desidera un pulsante di dimensione minore o maggiore si può usare btn-lg oppure btn-sm.

Pulsanti disabilitati

Un pulsante può essere reso inattivo con l’attributo disabled.

Pulsanti estesi

Per estendere la larghezza di un pulsante per tutto il livello che lo contiene si usa btn-block.

Active

La classe active rende l’aspetto del pulsante come quando si fa clic su di esso.

Esempi d’uso dei buttons

Realizziamo adesso degli esempi mettendo in pratica quanto spiegato finora.

Al seguente link potete vedere la pagina di esempio che vi mostra i pulsanti: Bootstrap buttons.

Di seguito la parte di codice inerenti i pulsanti che ho creato che potete inserire nel punto della pagina desiderato.

<div class="container">
	<div class="row">
		<div class="col-sm-6">
			<button type="button" class="btn btn-primary">Primario</button>
			<button type="button" class="btn btn-secondary">Secondario</button>
			<button type="button" class="btn btn-link">Link</button>
			<button type="button" class="btn btn-light">Chiaro</button>
			<button type="button" class="btn btn-dark">Scuro</button>
				
		</div>
		<div class="col-sm-6">
				
			<button type="button" class="btn btn-warning">Warning</button>
			<button type="button" class="btn btn-success">Successo</button>
			<button type="button" class="btn btn-info">Informazioni</button>
			<button type="button" class="btn btn-danger">Pericolo</button>
			</div>
		</div>
	</div>
	<hr>
<div class="container">
        <h3>Applicati agli input</h3>
	<input class="btn btn-warning" type="button" value="Input">
	<input class="btn btn-warning" type="submit" value="Submit">
	<input class="btn btn-warning" type="reset" value="Reset">
</div>

Provate ad applicare all’esempio proposto le altre classi che ho citato.

Questi sono solo dei semplici utilizzi dei Bootstrap buttons, più avanti vedremo altre applicazioni.

Link utili

Indice argomenti tutorial Bootstrap

1 – Introduzione a Bootstrap

2 – Creazione del primo template

3 – Come inserire una Navbar

4 – Personalizzare la posizione del menù

5 – Come utilizzare il grid system

6 – Bootstrap Container

7 – Inserire lo slideshow di immagini con Carousel

8 – Come utilizzare le Bootstrap images