Commit 612ad68c authored by Tancredi Orlando's avatar Tancredi Orlando

Fixes, fixes, fixes.

parent 178c29e1
......@@ -996,6 +996,19 @@ else:
- Se un modulo è eseguito direttamente la variabile `__name__` assume valore
`__main__`
----
- Python dispone di numerosi moduli già inclusi
- Le capacità del linguaggio si possono estendere con moduli esterni
- È possibile installare ulteiori moduli tramite `pip`
```
$ pip install --user shouty
Collecting shouty
Installing collected packages: shouty
Successfully installed shouty-0.1.dev6
```
---
# Input e Output
......@@ -1101,7 +1114,9 @@ with open("documento.txt", "w") as f:
## Guardiamoci le spalle
- Cosa succede apriamo un file che non esiste?
- Gli errori non sono sempre causati dal programmatore
- Si possono presentare situazioni in cui è plausibile che si verifichi un
errore
```
>>> f = open("documento.rtf", "r")
......@@ -1109,15 +1124,19 @@ Traceback (most recent call last):
File "<stdin>", line 1, in <module>
FileNotFoundError: [Errno 2] No such file or directory ...
```
- L'interprete solleva un errore
- Abbiamo la possibilità di prevenire un problema!
- Queste situazioni si chiamano **eccezioni**.
- Gli errori hanno un nome.
----
## Errori
## Eccezioni
- Il codice che potrebbe dare errori si include in un blocco `try`
- Si indica l'errore con l'istruzione `except`
- Si indica il codice da eseguire in caso si presenti l'errore dentro un blocco
`except`
- Sono condizioni eccezionali che possono verificarsi
- Vanno gestite con blocchi `try ... except`
```
>>> try:
... f = open("documento.txt", "r")
......@@ -1125,7 +1144,12 @@ FileNotFoundError: [Errno 2] No such file or directory ...
... print("Acciderba, questo file non esiste! Lo creo.")
... f = open("documento.txt", "w")
```
- Possiamo lanciarli a nostra volta
----
I più ardimentosi possono anche "alzare" eccezioni all'interno del proprio
codice con l'istruzione `raise`.
```
>>> raise Exception("No internet connection!")
Traceback (most recent call last):
......
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