Alcuni consigli:

- __name, __surname, ecc... sono attributi *privati* ovvero non accessibili se non dall'interno della tua stessa classe. Non credo tu li voglia usare.

- I nomi delle classi dovrebbero cominciare con una lettera maiuscola (ppl -> Ppl, vedi PEP-8: http://www.python.org/dev/peps/pep-0008/ )

- Invece di "if self.__name=='' or self.__surname==''" dovresti usare: "if not self.__name or not self.__surname:"

- Vedo che utilizzi Python 3.0, che per ora io sconsiglio sempre di usare in favore della 2.6.