Un autre exemple pour s'amuser : une méthode dont le nom commence par __ est privé, sauf si le nom se termine aussi par __. C'est tellement cohérent et intuitif qu'on dirait une règle de grammaire du français.
stripatublu% python
Python 2.5.4 (r254:67916, Nov 19 2009, 22:14:20)
[GCC 4.3.4] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> class Plop:
... def __plop(self):
... pass
... def __plop__(self):
... pass
...
>>> plop = Plop()
>>> plop.__plop()
Traceback (most recent call last):
File "", line 1, in
AttributeError: Plop instance has no attribute '__plop'
>>> plop.__plop__()
>>>
Les plus trolleurs auront remarqué le message d'erreur très explicite.
[^] # Re: Python vs Ruby
Posté par Jean-Philippe Garcia Ballester . En réponse au journal Choisir un framework web.... Évalué à 7.
stripatublu% python
Python 2.5.4 (r254:67916, Nov 19 2009, 22:14:20)
[GCC 4.3.4] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> class Plop:
... def __plop(self):
... pass
... def __plop__(self):
... pass
...
>>> plop = Plop()
>>> plop.__plop()
Traceback (most recent call last):
File "", line 1, in
AttributeError: Plop instance has no attribute '__plop'
>>> plop.__plop__()
>>>
Les plus trolleurs auront remarqué le message d'erreur très explicite.