[Python] l'amore per il pitone

Manlio Perillo manlio.perillo a gmail.com
Mer 18 Set 2013 10:19:19 CEST


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 17/09/2013 23:19, Piergiuliano Bossi wrote:
> [...] Domanda di riserva: non c'e' una len() che funziona
> direttamente sul generatore e non richieda di costruire una lista?

No, perch│ un generatore pu￲ generare una sequenza infinita.
Mentre alcuni linguaggi permettono all'equivalente di len di non
tornare, questo non │ vero in Python.

In realt¢ la ragione pratica │ che len chiama semplicemente il medoto
__len__ dell'oggetto, che fa parte del protocollo per implementare le
sequenze.
Un generatore non pu￲ definire tale metodo.

Sempre in realt¢, in alcuni linguaggio l'equivalente di len │
implementata per sequenze di cui non si conosce in anticipo la lunghezza.

Ovviamente puoi rimediare definendo una tua funzione length che │ pi
generica, che per￲ sar¢ anche meno efficiente se la applichi alle
sequenze builtin.

> [...]


Ciao  Manlio

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)
Comment: Using GnuPG with Icedove - http://www.enigmail.net/

iEYEARECAAYFAlI5YgYACgkQscQJ24LbaUQkXgCdF4PDbDHMY0GOHXdxk3MaPj1y
hsYAnAhHS+PwGZfs/yWBtZgcRX7d7asi
=7iLa
-----END PGP SIGNATURE-----


Maggiori informazioni sulla lista Python