Retour au blog

Écrire des modules en Python 3 : un tutoriel

Écrire des modules en Python 3 : un tutoriel

Introduction

Python est l'un des langages de programmation les plus couramment utilisés à travers le monde. Modules sont une partie essentielle du code Python. Un module est simplement un .py fichier dans le contexte de Python 3. Cela signifie que vous pouvez faire référence à n'importe quel fichier Python en tant que module.

Il vous est possible d'obtenir ces modules via la bibliothèque préformée. Vous pouvez jeter un œil à la bibliothèque standard de Python pour en savoir plus. Ceux-ci sont installés sur votre système lorsque vous installez Python. Dans d'autres situations, vous pouvez installer ces modules à l'aide du gestionnaire de paquets Python pip. Mais que se passe-t-il si vous souhaitez créer un module personnalisé ? Si tel est le cas, vous serez ravi d'apprendre que vous pouvez créer vos propres modules en Python.

Dans ce guide détaillé, nous allons décrire les étapes à suivre pour écrire et importer des modules dans Python 3.

Prérequis

Avant de commencer, vous devez vous assurer que Python 3 est installé et qu'un environnement de programmation est configuré. Vous pouvez suivre notre tutoriel sur l'installation de Python 3 et la configuration d'un environnement de programmation local sur Ubuntu 16.04 pour terminer l'installation au cas où vous ne l'auriez pas encore fait.

Comment écrire un module ?

Commençons par l'écriture d'un module. Vous écrivez un module tout comme vous rédigeriez n'importe quel autre fichier Python. Un module typique comprend les définitions des fonctions, des classes et des variables. Par la suite, vous pouvez utiliser le module pour l'appliquer à d'autres programmes Python.

Pour vous aider à comprendre, prenons un exemple. Disons que nous voulons créer un fichier nommé hello.py. Nous l'importerons également plus tard dans un autre fichier. La première étape du processus consiste à créer une fonction. Cette fonction servira à afficher Hello, World! comme ceci :

À ce stade, l'exécution de la commande python hello.py ne vous donnera aucun résultat. C'est parce que nous n'avons pas encore donné d'instructions au programme. Pour le faire fonctionner, nous devons importer le module.

Comment importer un module ?

Afin d'importer votre module pour en faire une fonction, vous devez créer un deuxième fichier dans le même répertoire. Nous appellerons ce nouveau fichier main_program.py. La raison pour laquelle les deux fichiers doivent se trouver dans le même répertoire est que nous devons indiquer au programme où trouver le module. Cela s'applique à tout nouveau module personnalisé qui n'est pas intégré :

Nous avons utilisé la notation par point pour le nom du module afin d'appeler la fonction. Une autre façon de procéder consiste à utiliser la méthode from...import. Ici, nous appellerons la fonction comme world() en important le module comme from hello import world. Enfin, vous pouvez exécuter la commande :

La commande vous affichera la sortie suivante :

Ajouter des variables à un module

Ensuite, nous verrons comment ajouter des variables au module en plaçant des définitions dans le module :

Par la suite, vous appellerez la variable dans la fonction print(). Nous l'appellerons dans le fichier main_program.py :

L'exécution du programme affichera cette sortie :

Ajouter une classe à un module

Enfin, nous verrons comment vous pouvez définir une classe dans votre fichier pour le module. En poursuivant notre exemple, nous allons créer une nouvelle classe appelée Octopus dans le fichier hello.py. Nous lui attribuerons également les attributs de name et color. Ensuite, nous ajouterons une fonction pour la rendre affichable :

Ensuite, vous devez ajouter la classe vers la fin du fichier main_program.py :

Vous pouvez appeler la classe avec la commande hello.Octopus(). Elle vous montrera les fonctions et les attributs de la classe Octopus dans l'espace de noms du fichier. Ainsi, vous pouvez écrire jesse.tell_me_about_the_octopus() dans la dernière ligne sans invoquer hello. Il est également possible d'appeler un attribut individuel de la classe sans utiliser hello. Par exemple, vous pouvez simplement exécuter jesse.color. Lorsque vous exécutez le programme, il affichera la sortie suivante :

Implémentation de code avec des modules

Là où vous pouvez utiliser des modules pour spécifier des définitions, vous pouvez également les utiliser pour implémenter du code. Disons que nous voulons implémenter la fonction world() . Nous allons réécrire complètement notre fichier initial hello.py :

Depuis le fichier main_program.py , nous allons tout supprimer à l'exception de l'instruction d'importation, ce qui donne ce qui suit :

L'exécution du fichier de programme principal vous donnera cette sortie puisque le programme implémente et exécute la fonction world() :

Comment accéder à un module depuis un autre répertoire ?

Maintenant que vous savez comment créer et modifier des modules, vous devez savoir comment y accéder depuis un autre répertoire. Cela est utile lorsque vous devez utiliser un module donné sur un autre projet. Il existe deux façons de procéder que nous expliquerons ci-dessous.

  • Ajout de chemins

La première méthode consiste à activer le chemin du module à l'aide des fichiers de programmation qui utilisent déjà le module. Malheureusement, cela ne signifie pas que le module sera disponible sur l'ensemble du système. Par conséquent, cela n'est considéré que comme une solution temporaire. Elle est souvent employée pendant la phase de développement du projet.

Vous pouvez commencer le processus d'ajout en important le module sys et d'autres modules importants que vous devez utiliser. Nous les importerons dans le fichier du programme principal. Vous pouvez trouver le module sys dans la bibliothèque standard de Python. Vous en avez besoin car il contient les paramètres de base et les fonctions spécifiques à votre système.

Considérons à nouveau notre exemple précédent. Disons que le fichier hello.py se trouve sur le chemin /usr/sammy/ et que le fichier main_program.py se trouve dans un autre répertoire. Nous allons d'abord importer le module hello dans le fichier main_program.py en utilisant d'abord le module sys. Ensuite, nous ajouterons /usr/sammy/ au chemin :

Si vous définissez le chemin correctement, le fichier main_program.py le fichier s'exécutera facilement sans erreurs. Vous recevrez la même sortie que lorsque les deux fichiers se trouvaient dans le même répertoire.

  • Chemin Python

L'autre option que vous pouvez choisir est le chemin Python. Ici, vous ajouteriez le module lui-même à un chemin dans lequel Python recherche les modules et les packages. Comme vous pouvez probablement le déduire, cela rend le module disponible à l'échelle du système, ce qui en fait une solution permanente viable.

Pour ce faire, vous devez déterminer où Python recherche les modules. Vous devrez exécuter l'interpréteur Python depuis l'environnement de programmation, ce qui ressemble à ceci :

L'étape suivante consiste à importer le sys module :

Ensuite, affichez le chemin système :

Maintenant, vous verrez un chemin système comme sortie. Il y en aura au moins un. Cependant, il peut y en avoir plusieurs dans un environnement de programmation. Dans la liste, localisez l'environnement que vous utilisez. Gardez à l'esprit que vous pouvez également ajouter le module au chemin Python principal du système. Voici à quoi cela ressemblera :

Enfin, déplacez le hello.py fichier dans ce répertoire et importez le module comme suit :

Votre tentative est réussie si le programme exécute le fichier sans produire d'erreurs. Grâce à ce processus, vous pourrez accéder au module depuis n'importe quel répertoire de votre système.

Conclusion

Le but de ce tutoriel était de vous aider à vous familiariser avec l'écriture de modules Python. C'est très similaire à la façon dont vous écririez n'importe quel fichier .py Python. Nous avons d'abord parlé de ce qu'est réellement un module Python et de ses fonctionnalités associées. Ensuite, nous avons découvert comment appliquer ces définitions dans d'autres fichiers de programmation en Python. Enfin, nous avons compris les détails de l'accessibilité des modules. Vous savez maintenant comment écrire des modules en Python 3 ainsi que comment y accéder.

Pour approfondir vos connaissances sur le langage de programmation Python, reportez-vous à notre blog pour plus de ressources :

Bonne programmation !

author

Pranay Kapgate

Auteur · CloudSigma

Preslav Dobrev est un designer créatif chez CloudSigma, axé sur une identité commerciale cohérente à travers des canaux marketing traditionnels et innovants. Il excelle à fusionner la vision artistique avec le marketing stratégique pour créer des récits de marque percutants.

Commentaires

Aucun commentaire pour l'instant. Soyez le premier.