Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> Python

Python-pakket

Python-pakket

In dit artikel leert u uw codebasis op te delen in schone, efficiënte modules met behulp van Python-pakketten. Ook leer je hoe je eigen pakketten of pakketten van derden kunt importeren en gebruiken in een Python-programma.

Video:Python-pakketten:organiseer uw code

Wat zijn pakketten?

Meestal slaan we niet al onze bestanden op onze computer op dezelfde locatie op. We gebruiken een goed georganiseerde hiërarchie van mappen voor eenvoudigere toegang.

Vergelijkbare bestanden worden in dezelfde map bewaard, we kunnen bijvoorbeeld alle nummers in de "muziek " directory. Analoog hieraan heeft Python pakketten voor mappen en modules voor bestanden.

Naarmate ons applicatieprogramma groter wordt met veel modules, plaatsen we vergelijkbare modules in één pakket en verschillende modules in verschillende pakketten. Dit maakt een project (programma) gemakkelijk te beheren en conceptueel helder.

Evenzo, aangezien een map submappen en bestanden kan bevatten, kan een Python-pakket subpakketten en modules hebben.

Een directory moet een bestand bevatten met de naam __init__.py zodat Python het als een pakket kan beschouwen. Dit bestand kan leeg worden gelaten, maar over het algemeen plaatsen we de initialisatiecode voor dat pakket in dit bestand.

Hier is een voorbeeld. Stel we zijn een spel aan het ontwikkelen. Een mogelijke organisatie van pakketten en modules zou kunnen zijn zoals weergegeven in de onderstaande afbeelding.


Module importeren uit een pakket

We kunnen modules uit pakketten importeren met behulp van de punt (.) operator.

Als we bijvoorbeeld de start module in het bovenstaande voorbeeld, kan dit als volgt worden gedaan:

import Game.Level.start

Als deze module nu een functie bevat met de naam select_difficulty() , moeten we de volledige naam gebruiken om ernaar te verwijzen.

Game.Level.start.select_difficulty(2)

Als deze constructie lang lijkt, kunnen we de module als volgt importeren zonder het pakketvoorvoegsel:

from Game.Level import start

We kunnen de functie nu eenvoudig als volgt aanroepen:

start.select_difficulty(2)

Een andere manier om alleen de vereiste functie (of klasse of variabele) uit een module binnen een pakket te importeren, is als volgt:

from Game.Level.start import select_difficulty

Nu kunnen we deze functie direct aanroepen.

select_difficulty(2)

Hoewel gemakkelijker, wordt deze methode niet aanbevolen. Het gebruik van de volledige naamruimte voorkomt verwarring en voorkomt dat twee dezelfde identifier-namen met elkaar in botsing komen.

Tijdens het importeren van pakketten kijkt Python in de lijst met mappen gedefinieerd in sys.path , vergelijkbaar met het zoekpad van de module.


Python

  1. Python-gegevenstypen
  2. Python-operators
  3. Python pass-instructie
  4. Python-functieargumenten
  5. Python-woordenboek
  6. Python-iterators
  7. Python-sluitingen
  8. Python datetime
  9. Python-slaap()
  10. Python - Overzicht
  11. Python - Cijfers