Dans l'attente de __all__
contrôler l'accès au module
Selon le contrat communautaire, les choses privées commencent par _
, mais récemment j'ai découvert qu'un collègue avait ajusté l'interface privée (un module que j'ai écrit)
Python est un langage flexible, et la règle non écrite est "la convention plutôt que la configuration"
J'ai recherché les informations de __all__
et j'ai pensé qu'elles pourraient répondre à mes exigences, mais ce n'est pas le cas (voir ci-dessous)
Alors, __all__
Ça semble ne servir à rien ?
base.py
__all__ = ('a', 'b', )
a = 1
b = 2
c = 3 # 不希望别人访问
test.py
import base
print(base.c)
Sortie
3
Python 2.7
Le fichier
test.py a été remplacé par
Les résultats sont les suivants :
Rien n'est vraiment privé en Python