Commit e038e407 authored by JackV's avatar JackV
Browse files

Move examples to jupyter notebook

parent 46b635bb
%% Cell type:markdown id: tags:
# Esempi Introduzione a Python
%% Cell type:markdown id: tags:
## Espressioni
%% Cell type:code id: tags:
``` python
2 + 2
```
%% Cell type:code id: tags:
``` python
3 * 3
```
%% Cell type:code id: tags:
``` python
4 < 5
```
%% Cell type:markdown id: tags:
## Commenti
%% Cell type:code id: tags:
``` python
# Ciao, io sono un commento
```
%% Cell type:markdown id: tags:
## Errori
%% Cell type:code id: tags:
``` python
3 / 0
```
%% Cell type:markdown id: tags:
## Variabili
%% Cell type:code id: tags:
``` python
x = 6
y = 2
```
%% Cell type:code id: tags:
``` python
x
```
%% Cell type:code id: tags:
``` python
y
```
%% Cell type:code id: tags:
``` python
2 * y
```
%% Cell type:code id: tags:
``` python
x + y
```
%% Cell type:code id: tags:
``` python
z = x + y
```
%% Cell type:code id: tags:
``` python
z
```
%% Cell type:markdown id: tags:
## Liste
%% Cell type:code id: tags:
``` python
lista = [False, 1, "due", 3.0, 4, 5]
```
%% Cell type:code id: tags:
``` python
lista
```
%% Cell type:code id: tags:
``` python
lista[0] = 0.0
```
%% Cell type:code id: tags:
``` python
lista
```
%% Cell type:code id: tags:
``` python
lista.append('sei')
```
%% Cell type:code id: tags:
``` python
lista
```
%% Cell type:code id: tags:
``` python
lista.remove('sei')
```
%% Cell type:code id: tags:
``` python
lista
```
%% Cell type:code id: tags:
``` python
lista.reverse()
```
%% Cell type:code id: tags:
``` python
lista
```
%% Cell type:code id: tags:
``` python
len(lista)
```
%% Cell type:markdown id: tags:
## Tuple
%% Cell type:code id: tags:
``` python
tupla = ('a', 1, 2, '3.0')
```
%% Cell type:code id: tags:
``` python
tupla[1] = 1.0
```
%% Cell type:code id: tags:
``` python
tupla.append('sei')
```
%% Cell type:markdown id: tags:
## Dizionari
%% Cell type:code id: tags:
``` python
d = {"chiave": "valore",
"nome":"Tancredi",
"cognome":"Orlando",
('immutable', 'types'): ['are', 'cool']
}
```
%% Cell type:code id: tags:
``` python
d['nome']
```
%% Cell type:code id: tags:
``` python
print('these things ' + ' '.join(d[('immutable', 'types')]))
```
%% Cell type:markdown id: tags:
## Formattazione Output
%% Cell type:code id: tags:
``` python
s = 'Corsi {} {}'
```
%% Cell type:code id: tags:
``` python
s.format('Python', '2019')
```
%% Cell type:code id: tags:
``` python
s.format('Linux', 'base')
```
%% Cell type:code id: tags:
``` python
s = 'Corsi {argomento} {tipo}'
```
%% Cell type:code id: tags:
``` python
s.format(tipo='avanzati', argomento='antani')
```
%% Cell type:code id: tags:
``` python
nome = input("Inserisci il tuo nome: ")
```
%% Cell type:code id: tags:
``` python
'Il tuo nome è {}.'.format(nome)
```
%% Cell type:markdown id: tags:
## Controllo Flusso
%% Cell type:code id: tags:
``` python
for i in [0, 1, 2, 3, 4]:
print(i)
```
%% Cell type:code id: tags:
``` python
for i in range(0,5):
print(i)
```
%% Cell type:code id: tags:
``` python
for i in lista:
print(i)
```
%% Cell type:code id: tags:
``` python
for i in [0, 1, 2, 3, 4, 5, 6, 7]:
if i == 2:
continue
if i == 6:
break
print(i)
```
%% Cell type:markdown id: tags:
## Funzioni
%% Cell type:code id: tags:
``` python
def say_hello():
print("Hello, world!")
```
%% Cell type:code id: tags:
``` python
say_hello()
say_hello()
```
%% Cell type:markdown id: tags:
%% Cell type:code id: tags:
``` python
def somma(a, b):
return a + b
```
%% Cell type:code id: tags:
``` python
somma(1, 2)
```
%% Cell type:code id: tags:
``` python
a = 3
b = 14
```
%% Cell type:code id: tags:
``` python
c = somma(a, b)
c
```
%% Cell type:code id: tags:
``` python
def f(a, b=3, c=6):
print(a, b, c)
```
%% Cell type:code id: tags:
``` python
f(1)
```
%% Cell type:code id: tags:
``` python
f(1, 2)
```
%% Cell type:code id: tags:
``` python
f(1, c=4)
```
%% Cell type:markdown id: tags:
%% Cell type:code id: tags:
``` python
def somma_migliorata(*args):
accumulatore = 0
for i in args:
accumulatore += i
return accumulatore
```
%% Cell type:code id: tags:
``` python
somma_migliorata(4,7)
```
%% Cell type:code id: tags:
``` python
somma_migliorata(1,2,3,4)
```
%% Cell type:markdown id: tags:
## Scoping
%% Cell type:code id: tags:
``` python
x = 'globale'
def f():
x = 'locale'
```
%% Cell type:code id: tags:
``` python
f()
x
```
%% Cell type:code id: tags:
``` python
x = 'globale'
def f():
print(x)
f()
```
%% Cell type:code id: tags:
``` python
def f():
print(x)
x = 'variabile ' + x
```
%% Cell type:code id: tags:
``` python
f()
```
%% Cell type:markdown id: tags:
## Null
%% Cell type:code id: tags:
``` python
def p():
print("Sono una funzione")
x = p()
```
%% Cell type:code id: tags:
``` python
x is None
```
%% Cell type:code id: tags:
``` python
```
......@@ -107,34 +107,10 @@ software che si interfaccia con l'utente).
----
## Espressioni
```
>>> 2 + 2
4
```
```
>>> 3 * 3
9
```
```
>>> 4 < 5
True
```
----
## Commenti
Tutto ciò posto dopo il cancelletto (`#`) non è interpretato.
```
>>> 1 + 1 # qui posso scrivere quello che voglio
2
```
----
## Errori
......@@ -152,40 +128,19 @@ Il segreto degli [hacker](http://www.girodivite.it/Diario-di-un-aspirante-hacker
## Variabili
```
>>> x = 6
>>> y = 2
>>> x
6
>>> y
2
```
```
>>> 2 * y
4
>>> x + y
8
```
```
>>> z = x + y
>>> z
8
```
----
Il tipo delle variabili Python può essere cambiato al volo
'''
```
>>> x = 2
>>> x
2
>>> x = 'stringa'
>>> x
'stringa'
'''
```
----
## Liste (`list`)
......@@ -202,48 +157,6 @@ lista = [False, 1, "due", 3.0, 4, 5]
desiderato tra parentesi quadre
- Il primo elemento ha indice 0 (zero-based)
```
>>> lista[2]
'due'
```
----
```
>>> lista = [False, 1, "due", 3.0, 4, 5]
>>> lista
[False, 1, 'due', 3.0, 4, 5]
```
```
>>> lista[0] = 0.0
>>> lista
[0.0, 1, 'due', 3.0, 4, 5]
```
```
>>> lista.append('sei')
>>> lista
[0.0, 1, "due", 3.0, 4, 5, 'sei']
```
```
>>> lista.remove('sei')
>>> lista
[0.0, 1, "due", 3.0, 4, 5]
```
```
>>> lista.reverse()
>>> lista
[5, 4, 3.0, 'due', 1, 0.0]
```
```
>>> len(lista)
6
```
----
## Tuple (`tuple`)
......@@ -252,24 +165,6 @@ lista = [False, 1, "due", 3.0, 4, 5]
- Sono quindi anche **ordinate**
- Si definiscono con le parentesi tonde
```python
tupla = ('a', 1, 2, '3.0')
```
```
>>> tupla[1] = 1.0
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment
```
```
>>> tupla.append('sei')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'tuple' object has no attribute 'append'
```
----
## Dizionari (`dict`)
......@@ -288,16 +183,6 @@ d = {"chiave": "valore",
Si accede ai campi come si accede agli elementi di una lista, usando la chiave
al posto dell'indice.
```
>>> d['nome']
'Tancredi'
```
```
>>> print('these things ' + ' '.join(d[('immutable', 'types')])
these things are cool
```
---
# Input e Output
......@@ -315,20 +200,6 @@ these things are cool
>>> s = 'Corsi {} {}'
>>> s.format('Python', '2019')
'Corsi Python 2019'
>>> s.format('Linux', 'base')
'Corsi Linux base'
```
```
>>> s = 'Corsi {argomento} {tipo}'
>>> s.format(tipo='avanzati', argomento='antani')
'Corsi antani avanzati'
```
```
from math import pi
>>> '{:.2f}'.format(pi)
3.14
```
----
......@@ -342,13 +213,6 @@ asd
'asd'
```
```
>>> nome = input("Inserisci il tuo nome: ")
Gattuso
>>> 'Il tuo nome è {}.'.format(nome)
'Il tuo nonme è Gattuso.'
```
---
# Controllo del flusso
......@@ -433,16 +297,6 @@ ora x vale 3
- Dopo una istruzione `continue` solo l'iterazione corrente è interrotta, il
ciclo ripende a partire dalla valutazione della condizione
```
>>> for i in [0, 1, 2, 3, 4, 5, 6, 7]: