Skip to content
Programmeren in Python, leer de nieuwste technieken
Programmeren in PythonProgrammeren in Python
  • Home
  • Blog
  • Documentatie
  • Cursussen
  • Tools
    • Python Paste
Programmeren in PythonProgrammeren in Python
  • Home
  • Blog
  • Documentatie
  • Cursussen
  • Tools
    • Python Paste

Introductie

3
  • 1.1 Wat is Python?
  • 1.2 Python installatie
  • 1.3 PyCharm Installatie

Basisprogrammering

6
  • 2.1 Python Basis: Variabelen, Datatypes en Operatoren
  • 2.2 Python if else (en elif)
  • 2.3 Python list (Array, Lijsten)
  • 2.4 Lussen: for, while, break, continue
  • 2.5 Functies: Definities, Parameters en Terugkeerwaarden
  • 2.6 Foutafhandeling: try, except, else, finally

Datatypes

13
  • 3.1 Introductie tot Geavanceerde Datatypes
  • 3.2 Python Tuple
  • 3.3 Python Set
  • 3.4 Python Dictionary
  • 3.5 Werken met Strings en String-methoden
  • 3.6 Collections Module: Krachtige Tools in Python
  • 3.7 Iterators en Generators
  • 3.8 List Comprehensions
  • 3.9 Geavanceerde Sortering
  • 3.10 Werken met Multi-dimensionale Data
  • 3.11 Typing en Datatypes
  • 3.12 Itertools voor Geavanceerde Iteraties
  • 3.13 Data Conversies

Modules

8
  • 4.1 Wat zijn Modules en Waarom zijn ze Belangrijk?
  • 4.2 Werken met Ingebouwde Modules
  • 4.3 Installeren en Gebruiken van Externe Pakketten
  • 4.4 Eigen Modules Maken
  • 4.5 Introductie tot Pakketten
  • 4.6 Importeren en Namespaces Begrijpen
  • 4.7 Geavanceerd: Relatief Importeren
  • 4.8 Organiseren van Grotere Projecten

Data Analyse

3
  • 5.1 Python Dataframe en Data Opschonen met Pandas
  • 5.2 Python Pandas Basisstatistieken en Data-analyse
  • 5.3 Python Numpy (NpArray): De Kracht van Numerieke Berekeningen

Webontwikkeling

5
  • 7.1 Inleiding tot Webontwikkeling
  • 7.2 HTTP-Verzoeken met requests: Communiceren met het Web
  • 7.3 Webscraping met BeautifulSoup: Data van het Web Halen als er geen APIs zijn
  • 7.4 Python Flask, een webserver & API tutorial
  • 7.5 WSGI & WebOb

Deploy

1
  • Deploy met Supervisor op Ubuntu
View Categories
  • Home
  • Documentatie
  • Modules
  • 4.5 Introductie tot Pakketten

4.5 Introductie tot Pakketten

4 minuten leestijd

Als je programmeert met Python, kom je vaak op het punt dat je je code wilt organiseren in logische groepen. Hier komen pakketten om de hoek kijken. Pakketten zijn een manier om modules te groeperen, zodat je projecten overzichtelijk blijven, zelfs als ze groeien. In dit hoofdstuk leer je wat pakketten zijn, hoe je ze maakt, en hoe je ze gebruikt in je code. 🎉

Wat zijn pakketten? #

Een pakket in Python is een map met meerdere modules (Python-bestanden). Denk aan een pakket als een “hoofdstuk” dat verschillende “paragrafen” (modules) bevat. Door pakketten te gebruiken, kun je je code organiseren in logisch gegroepeerde onderdelen.

Kenmerken van een pakket #

  • Het is een map die modules bevat.
  • Een pakket bevat meestal een speciaal bestand genaamd __init__.py, dat Python vertelt dat de map een pakket is.
  • Het stelt je in staat om modules binnen het pakket te importeren.

Waarom pakketten gebruiken? #

  1. Organisatie:
    Voor grotere projecten kun je je code op een logische manier groeperen.
  2. Herbruikbaarheid:
    Je kunt een pakket als geheel delen of opnieuw gebruiken in andere projecten.
  3. Leesbaarheid:
    Door modules op te splitsen in een pakket, wordt je code eenvoudiger te begrijpen en onderhouden.

Hoe maak je een pakket? #

Het maken van een pakket is eenvoudig. Hier is een voorbeeld van een pakket genaamd mijn_pakket, dat twee modules bevat: module1.py en module2.py.

Voorbeeldstructuur: #

mijn_pakket/
├── __init__.py
├── module1.py
└── module2.py
Python

Wat doet elk onderdeel? #

  1. __init__.py:
    Dit bestand vertelt Python dat de map een pakket is. Het kan leeg zijn, maar je kunt het ook gebruiken om gedeelde functies of variabelen in te zetten.
  2. module1.py:
    Een module met specifieke functies of klassen.
  3. module2.py:
    Een andere module met aanvullende functionaliteit.

Stap voor stap een pakket maken #

  1. Maak een map aan:
    Creëer een nieuwe map genaamd mijn_pakket.
  2. Voeg een __init__.py-bestand toe:
    Maak een leeg bestand met de naam __init__.py in de map.
  3. Voeg modules toe:
    Voeg Python-bestanden toe aan de map. Bijvoorbeeld:
# module1.py
def zeg_hallo():
    print("Hallo vanuit module1!")
Python

# module2.py
def groet_wereld():
    print("Groeten vanuit module2!")
Python

Importeren van een module uit een pakket #

Nadat je een pakket hebt gemaakt, kun je de modules erin importeren en gebruiken.

Voorbeeld: Een module importeren #

from mijn_pakket import module1

module1.zeg_hallo()  # Toont: Hallo vanuit module1!
Python

Importeren van meerdere modules #

Je kunt meerdere modules importeren uit hetzelfde pakket.

from mijn_pakket import module1, module2

module1.zeg_hallo()  
# Toont: Hallo vanuit module1!
module2.groet_wereld()  
# Toont: Groeten vanuit module2!
Python

Relatieve import binnen een pakket #

Als je een module binnen een pakket wilt importeren in een andere module uit hetzelfde pakket, kun je relatieve imports gebruiken.

Voorbeeld: Relatieve import #

# module2.py
from .module1 import zeg_hallo

def groet():
    zeg_hallo()
    print("En groeten vanuit module2!")
Python

Met deze structuur kun je functies uit andere modules binnen het pakket gebruiken zonder de volledige padnaam op te geven.

Een uitgebreider voorbeeld: Rekenmachinepakket #

Laten we een pakket maken genaamd rekenmachine. Dit pakket bevat modules voor optellen, aftrekken, en vermenigvuldigen.

Structuur: #

rekenmachine/
├── __init__.py
├── optellen.py
├── aftrekken.py
└── vermenigvuldigen.py
Python

  1. optellen.py:
def optel(a, b):
    return a + b
Python

  1. aftrekken.py:
def trek_af(a, b):
    return a - b
Python

  1. vermenigvuldigen.py:
def vermenigvuldig(a, b):
    return a * b
Python

  1. __init__.py: Voeg alle functies samen zodat je het pakket als geheel kunt gebruiken.
from .optellen import optel
from .aftrekken import trek_af
from .vermenigvuldigen import vermenigvuldig
Python

Gebruik van het pakket:

import rekenmachine

som = rekenmachine.optel(10, 5)
verschil = rekenmachine.trek_af(10, 5)
product = rekenmachine.vermenigvuldig(10, 5)

print(f"10 + 5 = {som}")
print(f"10 - 5 = {verschil}")
print(f"10 * 5 = {product}")
Python

Uitvoer:

10 + 5 = 15
10 - 5 = 5
10 * 5 = 50
Python

Waarom __init__.py belangrijk is #

Het bestand __init__.py speelt een sleutelrol in pakketten:

  1. Het vertelt Python dat de map een geldig pakket is.
  2. Je kunt het gebruiken om modules samen te voegen of initialisatiecode te schrijven.

Als je een pakket wilt importeren zonder expliciet alle modules op te geven, kun je __init__.py configureren om alles automatisch te laden.

Samenvatting #

Pakketten zijn een krachtige manier om je Python-code te organiseren en herbruikbaar te maken. Door een map te maken met modules en een __init__.py-bestand, kun je je projecten netjes structureren en functies logisch groeperen. Of je nu een kleine tool of een groot project bouwt, pakketten helpen je om overzichtelijk en efficiënt te werken.

Ga aan de slag en maak je eigen pakket – je zult zien hoe krachtig en eenvoudig het is! 🚀🎉

Updated on december 23, 2024
4.4 Eigen Modules Maken4.6 Importeren en Namespaces Begrijpen
Inhoudsopgave
  • Wat zijn pakketten?
    • Kenmerken van een pakket
  • Waarom pakketten gebruiken?
  • Hoe maak je een pakket?
    • Voorbeeldstructuur:
    • Wat doet elk onderdeel?
    • Stap voor stap een pakket maken
  • Importeren van een module uit een pakket
    • Voorbeeld: Een module importeren
    • Importeren van meerdere modules
  • Relatieve import binnen een pakket
    • Voorbeeld: Relatieve import
  • Een uitgebreider voorbeeld: Rekenmachinepakket
    • Structuur:
  • Waarom __init__.py belangrijk is
  • Samenvatting
Programmeren in Python

Leer python op je eigen tempo met mooie interactieve hedendaagse voorbeelden.

© Copyright 2025 Programmeren in Python.
Sign inSign up

Sign in

Don’t have an account? Sign up
Lost your password?

Sign up

Already have an account? Sign in