Un module est un fichier contenant des définitions et des instructions Python.
(Le suffixe du nom de fichier est .py
)
Les fichiers suivants peuvent également être traités comme des modules.
HelloWorld.py
print( “HelloWorld” )
A titre d'exemple, importez le module ʻos` de la bibliothèque standard.
import_test.py
import os
print( type( os ) )
# <class ‘module’>
print( os.getcwd() )
# /private/var/mobile/Library/Mobile Documents/iCloud~com~omz-software~Pythonista3/Documents/Test
Vous pouvez importer en faisant ʻimport
annuaire
- iCould - Test - MyFunc - MyCalc.py - MyCalcTest.py
Nous allons procéder avec les répertoires ci-dessus.
Importez le module MyCalc.py
avec MyCalcTest.py
Essayez d'utiliser les fonctions du module MyCalc.py
.
MyCalc.py
'''
Module de calcul personnalisé
'''
def sum ( v1, v2 ) :
'''
Ajouter
'''
return v1 + v2
def sub ( v1, v2 ) :
'''
Soustraire
'''
return v1 - v2
MyCalcTest.py
import MyFunc.MyCalc
v1 = 10
v2 = 5
res1 = MyFunc.MyCalc.add( v1, v2 )
print( "%d + %d = %d" %( v1, v2, res1 ) )
#>> 10 + 5 = 15
res2 = MyFunc.MyCalc.sub( v1, v2 )
print( "%d - %d = %d" %( v1, v2, res2 ) )
# 10 - 5 = 5
J'ai pu utiliser les fonctions du module MyCalc.py
comme ceci.
C'est un problème d'écrire MyFunc.MyCalc.add
à chaque fois.
Vous pouvez importer un objet avec from <nom du module> import <nom de l'objet>
.
import_test.py
from MyFunc.MyCalc import add, sub
v1 = 10
v2 = 5
res1 = add( v1, v2 )
print( "%d + %d = %d" %( v1, v2, res1 ) )
res2 = sub( v1, v2 )
print( "%d - %d = %d" %( v1, v2, res2 ) )
Tous les objets peuvent être importés en utilisant le caractère générique «*».
import_test.py
from MyFunc.MyCalc import *
v1 = 10
v2 = 5
res1 = add( v1, v2 )
print( "%d + %d = %d" %( v1, v2, res1 ) )
res2 = sub( v1, v2 )
print( "%d - %d = %d" %( v1, v2, res2 ) )
Selon la hiérarchie des répertoires, le nom du chemin à importer peut être long. Il est préférable de spécifier l'objet au lieu de l'utiliser tel quel. Y a-t-il un joker dans l'espace de noms qui est très facile à utiliser? Il vaut peut-être mieux s'en abstenir car il est inconnu.
Recommended Posts