En python, un répertoire contenant un ou plusieurs modules a parfois __init__.py
, de sorte que le répertoire peut être traité comme un python package
, est-ce correct? Quelles différences fait le __init__
? (Aussi une autre Q, est un module python juste un python de code fichier lié et peut-être indépendant (à d'autres fichiers) ensemble de classes, fonctions et variables?)Quelles sont les différences entre `__init__` dans un répertoire?
Répondre
En outre, le contenu de __init__.py
devient le contenu de l'emballage lors d'un traitement en tant que module, à savoir le contenu de somepackage/__init__.py
se trouvent dans dir(somepackage)
lorsque vous import somepackage
.
Les modules eux-mêmes peuvent être du code Python, specially-crafted C code, ou ils peuvent être an artificial construct injectés par l'exécutable qui charge la machine virtuelle Python.
Voici un explanation pourquoi __init__.py
est nécessaire:
Les fichiers
__init__.py
sont requis pour que Python traite les répertoires comme contenant des paquets; Ceci est fait pour empêcher les répertoires avec un nom commun, tel questring
, de masquer involontairement des modules valides qui surviennent plus tard dans le chemin de recherche du module. Dans le cas le plus simple,__init__.py
peut simplement être un fichier vide, mais il peut également exécuter le code d'initialisation du package ou définir la variable__all__
, décrite plus tard.
Comme je viens de le recommander à un autre poster, le tutorial on modules est très instructif.
- 1. Quelles sont les différences entre un proc et lambda?
- 2. Quelles sont les différences entre & et &&, | et || dans R?
- 3. Quelles sont les différences entre HoughCircles dans EmguCV et OpenCV?
- 4. Dans ASP.NET MVC, quelles sont les différences entre "<% =", "<%:" "
- 5. Quelles sont les différences entre RedrawWindow et UpdateWindow dans Win32?
- 6. Quelles sont les différences entre GlyphRange et CharacterRange dans NSTextView?
- 7. Quelles sont les différences entre les délégués et les événements?
- 8. Quelles sont les différences entre les fichiers .dll, .lib, .h?
- 9. Quelles sont les différences entre les constantes TouchEvent?
- 10. Quelles sont les différences entre les différents vecteurs épars d'ublas?
- 11. Quelles sont les différences entre les services distribués et décentralisés?
- 12. Quelles sont les principales différences entre tous les moteurs mysql?
- 13. Quelles sont les différences entre les versions de Json.Net?
- 14. Quelles sont les différences entre les nœuds NServiceBus.Distributor et Master
- 15. Quelles sont les différences entre les imbriqués if et &&?
- 16. Quelles sont les différences entre YUI2.7 et YUI2.8?
- 17. Quelles sont les différences entre [Serializable] et [Serializable()]
- 18. quelles sont les différences entre Fork(), Subprocess(), CreateProcess()?
- 19. Quelles sont les différences entre @dynamic et @synthesize?
- 20. quelles sont les différences entre ces poussées nasm pile?
- 21. Quelles sont les différences entre Spring Frameworks of Java?
- 22. Quelles sont les différences entre gdata.docs.service.DocsService et gdata.docs.client.DocsClient?
- 23. Quelles sont les différences d'implémentation entre TabPageIndicator et TitlePageIndicator?
- 24. Quelles sont les différences de rendu entre FF2 et FF3?
- 25. Quelles sont les différences entre gluProject et glhProject?
- 26. Quelles sont les différences entre g ++ version 4.0.0.8 et 4.3.2?
- 27. Quelles sont les principales différences entre Ruby 1.8.6 et 1.9.1?
- 28. Quelles sont les différences entre la rupture et la sortie?
- 29. En C#. Quelles sont les différences entre String et string?
- 30. Quelles sont les différences entre std :: strtol et std :: stoi?
Vous devriez lire le [tutorial] (http://docs.python.org/tutorial/modules.html). –