Python Academy · Les

Basisprincipes van argparse

Parse opdrachtregelargumenten

Les 1 van 413 stappen

Basisprincipes van argparse is een gratis Python Academy-les op CoddyKit. Dit is les 1 van 4. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Python Academy. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Python Academy bevat in totaal 4 lessen.

Waarom argparse?

De module argparse (standaardbibliotheek) bouwt gebruiksvriendelijke opdrachtregelinterfaces. De module verwerkt argumenten, controleert typen en genereert automatisch helptekst.

import argparse

parser = argparse.ArgumentParser(description='A demo tool')
print(type(parser).__name__)

Een parser maken

Begin met het maken van een ArgumentParser. De description verschijnt in de automatisch gegenereerde helptekst.

import argparse

parser = argparse.ArgumentParser(description='Greet a user')
print('parser ready')

Positionele argumenten

add_argument('name') definieert een vereist positioneel argument. Hier geven we een lijst door aan parse_args, zodat de functie zonder een echte opdrachtregel kan worden uitgevoerd.

import argparse

parser = argparse.ArgumentParser()
parser.add_argument('name')
args = parser.parse_args(['Alice'])
print('Hello,', args.name)

Optionele argumenten

Namen die met -- beginnen, zijn optionele vlaggen. Geef een default op voor het geval de gebruiker de vlag weglaat.

import argparse

parser = argparse.ArgumentParser()
parser.add_argument('--greeting', default='Hi')
args = parser.parse_args(['--greeting', 'Hey'])
print(args.greeting)
print(parser.parse_args([]).greeting)

Argumenten met een type

Gebruik type=int (of float enzovoort), zodat argparse de waarde omzet en controleert. Ongeldige invoer levert een duidelijke fout op.

import argparse

parser = argparse.ArgumentParser()
parser.add_argument('--count', type=int, default=1)
args = parser.parse_args(['--count', '5'])
print(args.count * 2)

Booleaanse vlaggen

action='store_true' maakt een vlag die standaard False is en True wordt wanneer deze aanwezig is. Dat is ideaal voor schakelaars zoals --verbose.

import argparse

parser = argparse.ArgumentParser()
parser.add_argument('--verbose', action='store_true')
print(parser.parse_args(['--verbose']).verbose)
print(parser.parse_args([]).verbose)

Korte en lange namen

Geef een argument zowel een korte als een lange vorm, zoals -n en --name. Beide stellen hetzelfde attribuut in.

import argparse

parser = argparse.ArgumentParser()
parser.add_argument('-n', '--name', default='world')
print(parser.parse_args(['-n', 'Sam']).name)

Keuzemogelijkheden

Beperk toegestane waarden met choices. argparse weigert alles wat niet in de lijst staat.

import argparse

parser = argparse.ArgumentParser()
parser.add_argument('--mode', choices=['fast', 'slow'], default='fast')
print(parser.parse_args(['--mode', 'slow']).mode)

Meerdere waarden met nargs

nargs='+' verzamelt een of meer waarden in een lijst. Dat is handig wanneer je meerdere invoerwaarden tegelijk wilt accepteren.

import argparse

parser = argparse.ArgumentParser()
parser.add_argument('files', nargs='+')
args = parser.parse_args(['a.txt', 'b.txt', 'c.txt'])
print(args.files)

Vereiste opties en helptekst

Voeg required=True toe om een optionele vlag verplicht te maken, en help= om deze te beschrijven in het gegenereerde gebruiksoverzicht.

import argparse

parser = argparse.ArgumentParser()
parser.add_argument('--id', required=True, type=int, help='record id')
args = parser.parse_args(['--id', '7'])
print('id is', args.id)

Een compleet klein programma

Als je alles combineert, vormen positionele invoer, een optie met een type en een vlag een klein maar echt opdrachtregelprogramma.

import argparse

parser = argparse.ArgumentParser(description='Repeat a message')
parser.add_argument('message')
parser.add_argument('--times', type=int, default=1)
parser.add_argument('--shout', action='store_true')
args = parser.parse_args(['hello', '--times', '2', '--shout'])
text = args.message.upper() if args.shout else args.message
for _ in range(args.times):
    print(text)

Korte controle

Test je begrip van argparse.

Samenvatting

Je hebt de basis van argparse geleerd:

  • ArgumentParser met positionele en --optional argumenten.
  • type, default, choices en required controleren de invoer.
  • action='store_true' voor vlaggen; nargs voor lijsten.
  • Helptekst wordt automatisch gegenereerd.

Volgende stap: subopdrachten en uitgebreidere verwerking van opties.

Gratis beginnen

Leer Python met een AI-tutor — gratis

Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.

Cursussen
76
Lessen
320

Veelgestelde vragen

Is de les “Basisprincipes van argparse” gratis?

Ja — de volledige tekst van “Basisprincipes van argparse” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus Python Academy wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus Python Academy bevat in totaal 4 lessen.

Wat leer ik in “Basisprincipes van argparse”?

Parse opdrachtregelargumenten Je oefent met Python Academy door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.

Heb ik ervaring nodig om met Python Academy te beginnen?

Ervaring vooraf is niet nodig. Python Academy op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 1 van 4.

Hoe lang duurt de les “Basisprincipes van argparse”?

De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.

Kan ik code schrijven en uitvoeren in deze les over Python Academy?

Ja. Elke les over Python Academy bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.

Alle lessen in deze cursus

  1. Basisprincipes van argparse
  2. Subopdrachten en opties
  3. De Click-bibliotheek
  4. Uitgebreide terminaluitvoer
← Terug naar Python Academy