Module projet.outils.Lieu
module pour la classe Lieux et ses tests
Expand source code
"""
module pour la classe Lieux et ses tests
"""
from projet.outils.Fils import Fils
class Lieu :
"""
Classe pour definir un lieu du graphe des lieux
"""
# attributs
# //////////////////////////////////////////////
__nom__ : int
""" numero du sommet correspondant au lieu courant """
__x__ : int
""" coordonnee x (abscisse) du lieu courant """
__y__ : int
""" coordonnee y (ordonnee) du lieu courant """
__lesFils__ : list
""" liste des fils du lieu courant """
# constructeur
# //////////////////////////////////////////////
def __init__ (self, n : int, x : int, y : int) :
""" constructeur
:param n: numero du sommet correspondant au lieu courant
:param x: abscisse du lieu courant
:param y: ordonnee du lieu courant
"""
self.__nom__ = n
self.__x__ = x
self.__y__ = y
self.__lesFils__ = [] ;
# les methodes
# //////////////////////////////////////////////
def getFils(self) :
""" recuperation liste des fils du lieu courant
:return liste des fils du lieu courant
"""
return self.__lesFils__
def getX(self) :
""" recuperation abscisse du lieu courant
:return abscisse du lieu courant
"""
return self.__x__
def getY(self) :
""" recuperation ordonnee du lieu courant
:return ordonnee du lieu courant
"""
return self.__y__
def getNom(self) :
""" recuperation numero du sommet correspondant au lieu courant
:return numero du sommet correspondant au lieu courant
"""
return self.__nom__
def __containsFils__(self, f : Fils) :
""" verification de l'appartenance d'un fils à la liste des fils du lieu courant
:param f: fils qu'on cherche ds la liste des fils du lieu courant
:return True si f est ds la liste, False sinon
"""
for x in self.__lesFils__ :
if x == f :
return True
return False
def addFils(self, f : Fils) :
""" ajout d'un fils à la liste des fils du lieu courant
:param f: fils a ajouter à la liste des fils du lieu courant
"""
if not self.__containsFils__ (f) :
self.__lesFils__.append(f)
def __str__(self) :
""" methode mettant le lieu courant sous la forme d'une
chaine de caracteres en prevision d'un futur affichage
:return representation du lieu courant sour la forme d'une chaine de caracteres
"""
s = "("+str(self.__nom__)+",("
for f in self.__lesFils__ :
s = s + str(f) +" / "
return s +"))"
class __testLieu__ :
# tests
# //////////////////////////////////////////////
""" methode principale de test pour la classe Lieu
"""
if __name__ == '__main__':
l = Lieu(0, 50, 100)
print("l = "+str(l))
l.addFils(Fils(1,0.56))
print("l = "+str(l))
l.addFils(Fils(2,3.14))
print("l = "+str(l))
print("nom = ",l.getNom(),", x = ",l.getX(),", y = ",l.getY())
print("les fils = ",str(l.getFils()))
l.addFils(Fils(2,3.14))
print("l = "+str(l))
Classes
class Lieu (n: int, x: int, y: int)
-
Classe pour definir un lieu du graphe des lieux
constructeur
:param n: numero du sommet correspondant au lieu courant
:param x: abscisse du lieu courant
:param y: ordonnee du lieu courant
Expand source code
class Lieu : """ Classe pour definir un lieu du graphe des lieux """ # attributs # ////////////////////////////////////////////// __nom__ : int """ numero du sommet correspondant au lieu courant """ __x__ : int """ coordonnee x (abscisse) du lieu courant """ __y__ : int """ coordonnee y (ordonnee) du lieu courant """ __lesFils__ : list """ liste des fils du lieu courant """ # constructeur # ////////////////////////////////////////////// def __init__ (self, n : int, x : int, y : int) : """ constructeur :param n: numero du sommet correspondant au lieu courant :param x: abscisse du lieu courant :param y: ordonnee du lieu courant """ self.__nom__ = n self.__x__ = x self.__y__ = y self.__lesFils__ = [] ; # les methodes # ////////////////////////////////////////////// def getFils(self) : """ recuperation liste des fils du lieu courant :return liste des fils du lieu courant """ return self.__lesFils__ def getX(self) : """ recuperation abscisse du lieu courant :return abscisse du lieu courant """ return self.__x__ def getY(self) : """ recuperation ordonnee du lieu courant :return ordonnee du lieu courant """ return self.__y__ def getNom(self) : """ recuperation numero du sommet correspondant au lieu courant :return numero du sommet correspondant au lieu courant """ return self.__nom__ def __containsFils__(self, f : Fils) : """ verification de l'appartenance d'un fils à la liste des fils du lieu courant :param f: fils qu'on cherche ds la liste des fils du lieu courant :return True si f est ds la liste, False sinon """ for x in self.__lesFils__ : if x == f : return True return False def addFils(self, f : Fils) : """ ajout d'un fils à la liste des fils du lieu courant :param f: fils a ajouter à la liste des fils du lieu courant """ if not self.__containsFils__ (f) : self.__lesFils__.append(f) def __str__(self) : """ methode mettant le lieu courant sous la forme d'une chaine de caracteres en prevision d'un futur affichage :return representation du lieu courant sour la forme d'une chaine de caracteres """ s = "("+str(self.__nom__)+",(" for f in self.__lesFils__ : s = s + str(f) +" / " return s +"))"
Methods
def addFils(self, f: Fils)
-
ajout d'un fils à la liste des fils du lieu courant
:param f: fils a ajouter à la liste des fils du lieu courant
Expand source code
def addFils(self, f : Fils) : """ ajout d'un fils à la liste des fils du lieu courant :param f: fils a ajouter à la liste des fils du lieu courant """ if not self.__containsFils__ (f) : self.__lesFils__.append(f)
def getFils(self)
-
recuperation liste des fils du lieu courant
:return liste des fils du lieu courant
Expand source code
def getFils(self) : """ recuperation liste des fils du lieu courant :return liste des fils du lieu courant """ return self.__lesFils__
def getNom(self)
-
recuperation numero du sommet correspondant au lieu courant
:return numero du sommet correspondant au lieu courant
Expand source code
def getNom(self) : """ recuperation numero du sommet correspondant au lieu courant :return numero du sommet correspondant au lieu courant """ return self.__nom__
def getX(self)
-
recuperation abscisse du lieu courant
:return abscisse du lieu courant
Expand source code
def getX(self) : """ recuperation abscisse du lieu courant :return abscisse du lieu courant """ return self.__x__
def getY(self)
-
recuperation ordonnee du lieu courant
:return ordonnee du lieu courant
Expand source code
def getY(self) : """ recuperation ordonnee du lieu courant :return ordonnee du lieu courant """ return self.__y__