406 votes

Comment écrire un module Python?

J'ai été faire des scripts Python pour de simples tâches au travail et de ne jamais vraiment pris la peine d'emballage pour les autres à utiliser. Maintenant, j'ai été invité à faire un wrapper Python pour une API REST. Je n'ai absolument aucune idée sur la manière de commencer et j'ai besoin d'aide.

Ce que j'ai:

(Veux juste être précis que possible) j'ai le virtualenv prêt, c'est aussi dans github, l' .gitignore fichier python est-il ainsi, et en plus, les demandes de la bibliothèque pour interagir avec l'API REST. C'est tout.

Voici l'arborescence actuelle

.
├── bin
│   └── /the usual stuff/
├── include
│   └── /the usual stuff/
├── lib
│   └── python2.7
│       └── /the usual stuff/
├── local
│   └── /the usual stuff/
└── README.md

27 directories, 280 files

Je ne sais même pas où mettre la .py fichiers, si j'arrive à en faire un.

Ce que je voulais faire:

Faire un module python installer-mesure avec "pip install ..."

Si possible, je veux un général le processus étape par étape sur la rédaction des modules Python.

446voto

Anuj Points 1458

Un module est un fichier Python contenant les définitions et les déclarations. Le nom de fichier est le nom du module avec le suffixe .py

créer hello.py puis écrire la fonction suivante:

def helloworld():
   print "hello"

>>> import hello
>>> hello.helloworld()
'hello'
>>>

Pour le groupe de nombreux .py fichiers placer dans un dossier. N'importe quel dossier avec un __init__.py est considéré comme un module en python et vous pouvez les appeler un paquet

|-HelloModule
  |_ __init__.py
  |_ hellomodule.py

Vous pouvez aller à ce sujet avec l'instruction d'importation sur votre module de la manière habituelle.

Pour plus d'informations:

http://docs.python.org/2/tutorial/modules.html#packages

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X