Commit 3e97b152 authored by edne's avatar edne
Browse files

Update day_1.md

parent 5e07e746
......@@ -491,17 +491,69 @@ else:
- print
- input
### Formattaizine dell'utput
### Formattaizione dell'utput
----
### Errori di sintassi
### Eccezzioni
---
# Errori ed Eccezioni
--
## Errori di Sintassi
```python
>>> while return print('Hello?') # ??????
SyntaxError: invalid syntax
```
- Sono i più comuni da commettere per chi sta imparando Python :-)
- Accadono quando scriviamo una istruzione in maniera *sintatticamente* errata
- L'interprete Python non riesce a capirne il significato e quindi non può eseguirla
--
## Eccezioni
### try (metterlo prima?)
- Rappresentano il verificarsi di situazioni *eccezionali*
### Sollevare Eccezioni
(definire eccezioni va nel giorno 2)
- Cosa succede se stiamo tentando di leggere un file che non esiste? O se
cerchiamo di dividere per zero?
--
## Gestire le Eccezioni
- Possiamo (e dovremmo) gestire le eccezioni racchiudendo le nostre istruzioni in un blocco `try/except`
```python
try:
x = int(input('Inserisci un intero: '))
except ValueError:
print('Oops! Non era un intero.')
```
--
## Sollevare Eccezioni
- In alcuni casi può essere utile sollevare delle eccezioni
- Per esempio quando una funzione non è in grado di gestire alcuni input
- Dovranno essere gestite (catturate) dal chiamante della funzione, altrimenti l'utente vedrà un messaggio di errore
```python
def mandaEmail(email, testo):
if not '@' in email:
raise ValueError("email non valida")
# [..]
```
Tancredi Orlando
`<`[`tancredi@coselosche.org`](mailto:tancredi@coselosche.org)`>`
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment