Python versione Bignami - Funzioni
def somma(a, b):
return a + b
print somma(4, 6)
def eleva(base, exp=2):
return base ** exp
print eleva(4) # Quadrato
print eleva(4, 3) # Cubo
- Chiamare i parametri per nome:
def login(host="", user="", password=""):
#...
login(user="test", host="test.org")
# Genera infinite potenze di un numero
def potenze(num):
p = num
while True:
yield p
p *= num
# Stampa potenze di 2 all'infinito
for x in potenze(2):
print x
Funzioni come valori
def quadrato(num):
return num ** 2
a = quadrato
print a(2) # Stampa 4
# Crea un vettore di quadrati
from numpy import *
squares = fromfunction(a, (10,))
Definizione al volo di funzioni
pitagora = lambda x, y : sqrt(x**2 + y**2)
a = pitagora(3, 4)
a = numpy.fromfunction(pitagora, (3, 4))
a = numpy.fromfunction(lambda r, c: r * 10 + c, (3, 4))