Itérer sur des instances d'objets d'une classe donnée en Python

Donné une classe qui tient un registre de ses Objets:

class Person(object):
   __registry = []

   def __init__(self, name):
       self.__registry.append(self)
       self.name = name

Comment pourrais-je faire le code suivant (sans l'aide de Personne.__de registre):

for personobject in Person:
    print personobject

Lors de mes recherches, j'ai trouvé une astuce que l'on peut aller pour un __metaclass__ avec un __getitem__-méthode. Des idées comment cela pourrait ressembler?

source d'informationauteur Titusz