# -*- encoding: iso-8859-15 -*-
class Personne:
def __init__(self,nom,age):
self.nom = nom
self.age = age
def anniversaire(self):
self.age+=1
class Retourner:
def __init__(self, object):
self.object = object
def __getattr__(self, name):
def proxy(*args, **kwds):
getattr(self.object, name)(*args, **kwds)
return self.object
return proxy
class Etudiant(Personne):
def __init__(self,nom,age,section):
Personne.__init__(self,nom,age) # heritage
self.section=section
def __str__(self):
out = "Etudiant %s a %d et est en section: %s\n" % (self.nom, self.age,self.section)
return out
def __cmp__(self,e2):
return cmp(self.age,e2.age)
def changeSection(self, nouvelleSection):
self.section=nouvelleSection
etudiants=[]
def afficheEtudiants():
print "Listes des étudiants:\n"
for etud in etudiants:
print "\t", etud
toto = Etudiant("Toto",23,"SSC")
print toto
toto.anniversaire()
toto.changeSection("INF")
print toto
titi = Etudiant("Titi",22,"SSC")
tata = Etudiant("Tata",25,"SSC")
etudiants=[toto,titi,tata]
print etudiants.sort()
etudiants=[toto,titi,tata]
etudiants = Retourner(etudiants).sort()
afficheEtudiants()