Je suis en train de mettre un tas de choses liées dans une classe. Le but principal est de les organiser dans un espace de noms.Est-ce une bonne idée d'utiliser la classe comme un espace de noms en Python?
class Direction:
north = 0
east = 1
south = 2
west = 3
@staticmethod
def turn_right(d):
return turn_to_the_right
@staticmethod
def turn_left(d):
return turn_to_the_left
# defined a short alias because direction will be used a lot
D = Direction
d0 = D.north
d1 = D.turn_right(d)
Il n'y a pas beaucoup de concept d'objet impliqué. En C++, j'utiliserai le mot-clé de la langue réelle namespace
. Il n'y a pas de telle chose dans Python. Donc j'essaie d'utiliser class
à cette fin.
Est-ce une bonne idée? Un piège avec cette approche?
Je viens de répondre à une question connexe hier. Cette question est posée d'une manière différente. C'est une décision que je dois prendre pour moi-même.
Méthode statique vs fonction du module dans python - débordement de pile
Static method vs module function in python
Merci. Jusqu'à présent, le commentaire que j'ai obtenu est 1. Utilisez le module 2. Faites ce qui est logique. Ce que je veux toujours comprendre est si la classe est considérée comme une option légitime pour simplement utiliser comme espace de noms ou s'il y a de bonnes raisons de ne pas le faire. –