Existe-t-il un moyen de partager les en-têtes en python? J'importe les mêmes choses dans différents contrôleurs dans les pylônes.Partager les en-têtes parmi les fichiers en python?
Répondre
Essayez de mettre le code commun dans le fichier __init__.py
. Comme dans here: "Le fichier __init__.py
est généralement vide, mais peut être utilisé pour exporter des parties sélectionnées du paquet sous des noms plus pratiques, tenir des fonctions pratiques, etc."
Vous pouvez mettre les choses « en-tête » dans un module de leur propre et, partout où vous en avez besoin, faire
from myheadermodule import *
Sauf que cette forme d'importation est généralement considérée comme une mauvaise pratique, pour de bonnes raisons. Si vous êtes nouveau sur Python, vous risquez de vous retrouver en difficulté à l'utiliser. Si la structure de votre programme est telle que vous en avez besoin, vous pouvez probablement faire mieux en revisitant cette structure et en l'améliorant. –
@Peter: Je ne dis pas que les modules normaux devraient généralement être importés comme ça. Je dis que cela résoudrait le problème spécifique décrit, que j'ai compris comme "comment puis-je éviter de copier-coller les mêmes instructions" import "dans beaucoup de mes modules". Je ne pense pas que les raisons normales contre 'import * 's'appliqueraient dans ce cas. Cette interprétation de la question pourrait cependant être erronée, car je ne vois pas vraiment comment la réponse acceptée résoudrait ce problème. – sth
vous avez raison de dire que votre réponse répond directement à la question. Je préviens juste le PO qu'il devrait chercher une alternative à l'utilisation de cette approche. Ce n'est pas nécessaire dans un système bien conçu. Une variation simple qui serait beaucoup mieux serait d'utiliser 'import myheadermodule comme mh' et d'accéder ensuite à tout ce qui est dedans comme' mh.foo' et 'mh.bar'. N'hésitez pas à incorporer l'avertissement et le conseil dans votre réponse, si vous êtes d'accord. –
- 1. Comment partager CSS StyleSheet parmi les projets?
- 2. Partager un service Web parmi les projets
- 3. Partager des sessions de rails parmi les applications
- 4. Comment partager un fichier de filtre parmi les modules Maven2?
- 5. java partager les fichiers source
- 6. Partager global logger parmi le module/classes
- 7. Comment utiliser les entêtes openssl crypto lib en C++?
- 8. Dézipper les fichiers en python
- 9. Variable partagée parmi les processus Ruby
- 10. Comment modifier les fichiers programme en Python?
- 11. déterminer les modifications de fichiers en python
- 12. Ré-ouvrir les fichiers en Python?
- 13. Comment sauter parmi les UIViewControllers?
- 14. Python: Comment partager le fichier?
- 15. Pouvez-vous partager des ressources à travers les fichiers APK?
- 16. nHibernate Partager les références?
- 17. comment avoir des variables globales parmi les différents modules en Python
- 18. Sélection parmi les langues CjK sur l'iPhone
- 19. gtm-http-fetcher modifier entêtes HTTP
- 20. Sélectionnez parmi les enregistrements MySQL qui résument
- 21. Portabilité parmi les plates-formes mobiles
- 22. Choisir le minimum parmi les minima en utilisant Parallel.ForEach
- 23. Partager des données entre les processus mod_python
- 24. Passant une autre classe parmi les instances
- 25. Mysql Choisissez parmi les différentes tables
- 26. convertir l'espace blanc dans les fichiers python?
- 27. Comment puis-je partager les fonctions C# DllImport entre les fichiers?
- 28. Où Python recherche-t-il les fichiers?
- 29. Partager les variables entre les modules dans Javascript/node.js?
- 30. Comment comprendre les fichiers makefiles et python
Vous devrez élaborer un peu sur ce que vous voulez partager. Python lui-même n'a pas d'en-tête comme d'autres langues. Vous mentionnez Pylons, cependant. La question concerne-t-elle réellement un système de modèles? –
non, pas un fichier "en-têtes", mais comme importer une importation b importation c – Timmy