Je suis nouveau chez Python, j'essaye de construire un ancien fichier python dans Python 3. J'ai eu plusieurs erreurs de construction que j'ai résolues. Mais à ce stade, je suis obtenir au-dessus de l'erreur. Je ne sais pas comment résoudre ce problème. La section de code ressemble à ci-dessous.
return itertools.ifilter(lambda i: i.state == "IS", self.storage)
itertools.ifilter()
a été supprimée dans Python 3 car la fonction intégrée filter()
fournit désormais la même fonctionnalité.
Si vous avez besoin d'écrire du code qui peut s'exécuter dans les deux Python 2 et Python 3, utilisez les importations de future_builtins
module (uniquement dans Python 2, utilisez donc un try...except ImportError:
garde):
try:
# Python 2
from future_builtins import filter
except ImportError:
# Python 3
pass
return filter(lambda i: i.state == "IS", self.storage)