Python-ontwikkeling met ServBay
Python is een krachtige en flexibele programmeertaal die breed wordt ingezet in webontwikkeling, data science, automatiseringsscripts en meer. ServBay, speciaal ontworpen als lokale webontwikkelomgeving voor ontwikkelaars, biedt uitstekende ondersteuning voor meerdere Python-versies. Zo integreer je Python moeiteloos met andere ServBay-componenten (zoals webservers en databases) voor het opzetten van een complete lokale workflow.
Wat is Python?
Python is een high-level, geïnterpreteerde, algemene programmeertaal, bekend om zijn beknopte en heldere syntaxis en krachtige functionaliteit. De ontwerpfilosofie van Python legt de nadruk op leesbaarheid en eenvoud, waardoor het bijzonder geschikt is voor snelle applicatieontwikkeling. Python ondersteunt verschillende programmeerparadigma’s: objectgeoriënteerd, imperatief, functioneel en procedureel programmeren. Dankzij de rijke standaardbibliotheek en de enorme open source-community is Python populair in onder andere webontwikkeling (zoals met de Django- en Flask-frameworks), data-analyse, kunstmatige intelligentie en wetenschappelijk rekenen.
ServBay’s ondersteuning voor Python
ServBay biedt je een eenvoudige methode om verschillende Python-versies te installeren en beheren, zonder gedoe met conflictsituaties rond het systeem-Python of ingewikkelde installatieprocedures. Met ServBay schakel je moeiteloos tussen Python-versies, zodat elk project de benodigde versie gebruikt.
ServBay ondersteunt de volgende Python-versies (beschikbare versies kunnen met nieuwe ServBay-releases meegroeien):
- Python 2.7
- Python 3.5
- Python 3.6
- Python 3.7
- Python 3.8
- Python 3.9
- Python 3.10
- Python 3.11
- Python 3.12
- Python 3.13
- Python 3.14 (en hoger)
Hiermee kun je kiezen uit legacy Python 2.7 tot aan de meest actuele Python 3.x-releases—voor iedere projectbehoefte is de juiste versie beschikbaar.
Python installeren
Het installeren van Python via het grafisch ServBay-paneel is zeer eenvoudig:
- Open het ServBay GUI-paneel.
- Navigeer naar het menu
Packages
aan de linkerkant. - Zoek in de lijst naar de categorie
Python
. - Klap de
Python
-categorie open om de ondersteunde versies te zien. - Selecteer de gewenste versie (bijvoorbeeld Python 3.12) en klik op de groene
Installeren
-knop naast die versie. - ServBay downloadt en installeert nu automatisch de geselecteerde Python-versie en de benodigde componenten. Wacht tot de installatie voltooid is; het knopje wordt groen als 'geïnstalleerd'.
ServBay GUI-pakketpaneel, toont de lijst met Python-versies en installatieknoppen
Je kunt naar wens meerdere Python-versies installeren.
Python gebruiken via de opdrachtregel
Python-versies die via ServBay worden geïnstalleerd, worden toegevoegd aan de ServBay-omgeving en zijn direct toegankelijk in de terminal. ServBay past automatisch je PATH-variabele aan, zodat de geïnstalleerde Python-versies vlot bruikbaar zijn.
Meestal zijn de volgende commando’s beschikbaar:
python
: wijst naar de laatst geïnstalleerde Python 3-versie.python2
: wijst naar Python 2.7 (indien geïnstalleerd).python3
: wijst naar de meest recente geïnstalleerde Python 3.pythonX.Y
: wijst naar een specifieke versie, bijvoorbeeldpython3.12
(indien geïnstalleerd).
Je kunt de geïnstalleerde Python-versies controleren in de ServBay-terminal (te openen via het GUI-paneel) of je eigen terminal:
bash
# Controleer welke versie de standaard 'python' commando gebruikt
python -V
# Voorbeeldoutput: Python 3.12.2
# Controleer de Python 3-versie
python3 -V
# Voorbeeldoutput: Python 3.12.2
# Indien Python 2.7 geïnstalleerd is, controleer de versie
python2 -V
# Voorbeeldoutput: Python 2.7.18
# Specifieke versie direct aanroepen
python3.10 -V
# Voorbeeldoutput: Python 3.10.13
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Een eenvoudig Python-script uitvoeren:
Maak een nieuw bestand aan in je webprojectroot (zoals
/Applications/ServBay/www
) of een andere handige locatie, bijvoorbeeldhello.py
.Voeg deze Python-code toe:
python# hello.py print("Hello from ServBay Python!")
1
2Sla het bestand op.
Open een terminal (direct via ServBay óf je eigen terminal, mits ServBay actief is en je PATH goed staat).
Navigeer naar de map waar je
hello.py
hebt geplaatst.Voer het script uit met:
bash# Stel dat je hello.py in de www-map van ServBay hebt gezet cd /Applications/ServBay/www python hello.py # Uitvoer: Hello from ServBay Python!
1
2
3
4Of gebruik een specifieke versie:
bashpython3.12 hello.py # Uitvoer: Hello from ServBay Python!
1
2
Python-pakketten beheren (met pip)
Elke Python-versie uit ServBay wordt geleverd met het pip
-pakketbeheer voor het installeren en beheren van derde partijen.
TIP
ServBay bevat standaard pip; je hoeft het dus niet apart te installeren.
Het basiscommando voor pakketinstallatie is pip install <pakketnaam>
. Heb je meerdere Pythons, zorg dan dat je altijd het juiste pip
gebruikt—gewoonlijk pipX.Y
of via pythonX.Y -m pip
.
- Standaard
pip
gebruiken (doorgaans gekoppeld aanpython
ofpython3
):bashpip install requests
1 - Specifieke versie van pip gebruiken:bash
pip3.12 install requests
1 - Module-aanpak gebruiken (aanbevolen, want expliciet):bash
python3.12 -m pip install requests
1
Projectafhankelijkheden isoleren met virtuele omgevingen
Hoewel ServBay meerdere globale Python-versies ondersteunt, is het sterk aanbevolen om per project een virtuele omgeving te gebruiken.
Waarom een virtuele omgeving?
- Afhankelijkheden isoleren: Elk project kan eigen bibliotheekversies nodig hebben (bijvoorbeeld, project A gebruikt
requests==2.25.0
, project Brequests==2.28.1
). Virtuele omgevingen geven ieder project een eigen Python-omgeving met eigensite-packages
, zodat afhankelijkheden nooit conflicteren. - Consistente omgeving: Door afhankelijkheden vast te leggen in bijvoorbeeld een
requirements.txt
ofpyproject.toml
, voorkom je "werkt op mijn machine"-problemen tussen ontwikkeling, test en productie. - Systeem schoonhouden: Projectspecifieke pakketten worden niet globaal geïnstalleerd; zo blijft het globale ServBay-Python schoon.
Virtuele omgeving creëren en gebruiken (voorbeeld met het ingebouwde venv
):
Stel dat je voor je project my_flask_app
ServBay’s Python 3.12 wilt gebruiken:
- Kies de juiste Python-versie (bijvoorbeeld
python3.12
). - Maak virtuele omgeving aan:bashDit maakt in je projectmap de map
# Ga naar je projectmap cd /Applications/ServBay/www # Maak projectdirectory mkdir my_flask_app cd my_flask_app # Maak de venv met de juiste Python-versie van ServBay # '.venv' is de aanbevolen mapnaam python3.12 -m venv .venv
1
2
3
4
5
6
7
8
9.venv
aan, met daarin een eigen Python-interpreter, pip, ensite-packages
. - Activeer de virtuele omgeving:bashNa activatie krijg je een
# Op macOS source .venv/bin/activate
1
2(.venv)
-prefix in je prompt en verwijzenpython
enpip
automatisch naar de juiste versies in.venv
. - Installeer afhankelijkheden:bash
# pip install installeert nu pakketten alleen in deze omgeving pip install Flask requests # Zie geïnstalleerde pakketten pip list
1
2
3
4
5 - Ontwikkel je applicatie…
- Deactiveer de venv: Klaar? Typ dan:bash
deactivate
1
Virtuele omgevingen werken uitstekend samen met de .servbay.config
-feature hieronder, voor maximale flexibiliteit en projectisolatie.
Het Python-versiebeheer per project met .servbay.config
ServBay heeft een krachtige functie: door een .servbay.config
-bestand in de projectroot te plaatsen, wijs je automatisch de juiste versie van je ontwikkelomgeving toe aan een project, inclusief Python-versie.
Werking:
Wanneer je een map met .servbay.config
binnengaat via de geïntegreerde terminal van ServBay, leest ServBay dit bestand en past tijdelijk de relevante omgevingsvariabelen aan. Zo verwijzen commando’s als python
, php
, node
direct naar de aangegeven versie.
Het .servbay.config
-bestand beïnvloedt enkel de command line (CLI) in de map en onderliggende submappen, niet de webserver.
Formaat van het configuratiebestand:
.servbay.config
is een eenvoudig key-value tekstbestand. Geef voor Python de gewenste versie door met de sleutel PYTHON_VERSION
, gevolgd door het versienummer (zoals 3.11
, 3.12
) dat reeds in ServBay is geïnstalleerd.
ini
# Voorbeeld van .servbay.config
# Deze projectmap gebruikt Python 3.11
PYTHON_VERSION=3.11
# Ook andere tools kun je hier specificeren
PHP_VERSION=8.2
NODE_VERSION=20
# ... Andere opties, zoals registries of cachepaden ...
# NPM_CONFIG_REGISTRY=https://registry.npmmirror.com/
# GOPROXY=https://goproxy.cn,direct
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
Voordelen:
- Automatische versie-switch: Geen gedoe met globale Python-aanpassingen of telkens venv activeren. Je stapt in je projectmap, en alles wordt automatisch voor je ingesteld.
- Projectisolatie: Elk project draait gegarandeerd met de bedoelde Python-versie, waardoor conflictsituaties worden voorkomen.
- Teamwerk: Voeg het
.servbay.config
-bestand toe aan je versiebeheersysteem zoals Git—je hele team werkt gegarandeerd met dezelfde basisversies.
Voorbeeldscenario:
Stel je hebt twee projecten:
project-a
vereist Python 3.11project-b
vereist Python 3.14
Maak in beide mappen een .servbay.config
:
/Applications/ServBay/www/project-a/.servbay.config
:iniPYTHON_VERSION=3.11
1/Applications/ServBay/www/project-b/.servbay.config
:iniPYTHON_VERSION=3.14
1
Na cd /Applications/ServBay/www/project-a
in de ServBay-terminal, geeft python -V
bijvoorbeeld Python 3.11.x terug. In project-b
terug Python 3.14.x.
Let op: .servbay.config
bepaalt alleen de basis-Python-versie in de CLI-omgeving voor ServBay. Het wordt aangeraden om daarbovenop alsnog een virtuele omgeving (venv
, pipenv
, poetry
) te gebruiken voor je afhankelijkhedenbeheer.
Integratie met andere ServBay-componenten
Een groot voordeel van ServBay is de alles-in-één lokale ontwikkelomgeving. Combineer Python met andere componenten zoals:
- Webontwikkeling: Gebruik Caddy of Nginx van ServBay als webserver om je Python webapps te hosten (zoals met Django of Flask). Stel de webserver in als reverse proxy richting je Python appserver (bijvoorbeeld Gunicorn, uWSGI).
- Databases: Python-apps hebben vaak een database nodig. ServBay biedt MySQL, PostgreSQL, MongoDB en meer—gebruik bijvoorbeeld
psycopg2
(PostgreSQL) ofmysql-connector-python
(MySQL) om verbinding te maken met deze databases. - Caching: Profiteer als Python-ontwikkelaar ook van ServBay’s Redis of Memcached voor snelle cacheopslag.
Belangrijke aandachtspunten
- PATH-variabele: ServBay past je terminal-PATH aan om ServBay-tools te prioriteren. Heb je ook Python buiten ServBay geïnstalleerd, let dan goed op welke versie wordt gebruikt met
which python
ofwhich python3
. - Virtuele omgevingen: Gebruik altijd virtuele omgevingen voor projectontwikkeling, ook al biedt ServBay een basisinstallatie van Python. Dit houdt je afhankelijkheden gescheiden en je systeem schoon.
- Afhankelijkheden: Sommige Python-pakketten vereisen systeembibliotheken (zoals ontwikkeltools of libraries). Krijg je installatiefouten, check dan de documentatie van het pakket en overweeg extra dependencies via bijvoorbeeld Homebrew te installeren.
Veelgestelde vragen (FAQ)
Vraag: Ondersteunt ServBay het naast elkaar installeren van Python 2.x en 3.x?
Antwoord: Ja, je kunt binnen ServBay zowel Python 2.x als 3.x installeren. Gebruik de commando’s python2
en python3
om respectievelijk elk van deze te starten.
Vraag: Als ik meerdere Python-versies heb geïnstalleerd, hoe wijs ik de standaard python
-opdracht aan een specifieke versie toe?
Antwoord: Stel dit in via het menu “Instellingen” van ServBay voor zowel Python 2.x als 3.x. Voor fijnmazige controle per project wordt aangeraden om .servbay.config
te gebruiken. Dat forceert automatisch de juiste versie voor dat project via het python
-commando.
Vraag: Hoe installeer ik externe bibliotheken in de Python van ServBay?
Antwoord: Gebruik de bijbehorende pip
-opdracht voor de gewenste versie. Voor Python 3.12 is dat bijvoorbeeld python3.12 -m pip install <pakketnaam>
. Doe dit bij voorkeur na activatie van je virtuele omgeving.
Vraag: Hoe stel ik ServBay’s webserver in voor Python webapps?
Antwoord: Meestal moet je Caddy of Nginx configureren om verzoeken door te sturen naar je Python-appserver (zoals Gunicorn, uWSGI), afhankelijk van het gebruikte framework. Zie de ServBay-handleiding voor meer informatie over websites en webserverinstellingen.
Samenvatting
ServBay biedt Python-ontwikkelaars op macOS een geïntegreerde, gebruiksvriendelijke lokale ontwikkelomgeving. Installeer en beheer eenvoudig meerdere Python-versies, beheer afhankelijkheden met pip, en koppel je Python-apps moeiteloos aan de webservers en databases van ServBay. Samen met virtuele omgevingen creëer je voor elk project een stabiele en volledig geïsoleerde ontwikkelomgeving.