Grundlæggende om argparse
Pars kommandolinjeargumenter
Grundlæggende om argparse er en gratis Python Academy-lektion på CoddyKit. Dette er lektion 1 af 4. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i Python Academy, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Python Academy-kurset indeholder 4 lektioner i alt.
Hvorfor argparse?
Modulet argparse (standardbiblioteket) opbygger brugervenlige kommandolinjegrænseflader. Det fortolker argumenter, validerer typer og genererer automatisk hjælpetekst.
import argparse
parser = argparse.ArgumentParser(description='A demo tool')
print(type(parser).__name__)Oprettelse af en parser
Begynd med at oprette en ArgumentParser. description vises i den automatisk genererede hjælp.
import argparse
parser = argparse.ArgumentParser(description='Greet a user')
print('parser ready')Positionsargumenter
add_argument('name') definerer et påkrævet positionsargument. Her sender vi en liste til parse_args, så det kan køre uden en rigtig kommandolinje.
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('name')
args = parser.parse_args(['Alice'])
print('Hello,', args.name)Valgfrie argumenter
Navne, der starter med --, er valgfrie flag. Angiv en default for de tilfælde, hvor brugeren udelader dem.
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)Argumenter med typer
Brug type=int (eller float osv.), så argparse konverterer og validerer værdien. Ugyldige input giver en tydelig fejl.
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('--count', type=int, default=1)
args = parser.parse_args(['--count', '5'])
print(args.count * 2)Booleske flag
action='store_true' opretter et flag, der som standard er False og bliver True, når det angives. Det er perfekt til flag som --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 og lange navne
Giv et argument både en kort og en lang form, f.eks. -n og --name. Begge sætter den samme attribut.
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('-n', '--name', default='world')
print(parser.parse_args(['-n', 'Sam']).name)Valgmuligheder
Begræns de tilladte værdier med choices. argparse afviser alt, der ikke findes på listen.
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('--mode', choices=['fast', 'slow'], default='fast')
print(parser.parse_args(['--mode', 'slow']).mode)Flere værdier med nargs
nargs='+' samler en eller flere værdier i en liste, hvilket er praktisk, når du vil acceptere flere input på én gang.
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('files', nargs='+')
args = parser.parse_args(['a.txt', 'b.txt', 'c.txt'])
print(args.files)Påkrævede valgmuligheder og hjælp
Tilføj required=True for at gøre et valgfrit flag påkrævet, og brug help= til at dokumentere det på den genererede brugsskærm.
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)Et komplet lille værktøj
Samlet set danner et positionsinput, en valgmulighed med type og et flag et lille, men rigtigt kommandolinjeværktøj.
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)Hurtig afprøvning
Afprøv din forståelse af argparse.
Opsamling
Du har lært det grundlæggende i argparse:
ArgumentParsermed positionsargumenter og--optional-argumenter.type,default,choicesogrequiredvaliderer input.action='store_true'til flag ognargstil lister.- Hjælpeteksten genereres automatisk.
Næste emne: underkommandoer og mere avanceret håndtering af valgmuligheder.
Lær Python med en AI-underviser — gratis
Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.
- Kurser
- 76
- Lektioner
- 320
Ofte stillede spørgsmål
Er lektionen “Grundlæggende om argparse” gratis?
Ja — hele teksten til “Grundlæggende om argparse” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af Python Academy-kurset, skal du opgradere til CoddyKit PRO. Python Academy-kurset indeholder 4 lektioner i alt.
Hvad lærer jeg i “Grundlæggende om argparse”?
Pars kommandolinjeargumenter Du øver dig i Python Academy med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.
Skal jeg have erfaring for at begynde på Python Academy?
Der kræves ingen tidligere erfaring. Python Academy på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 1 af 4.
Hvor lang tid tager lektionen “Grundlæggende om argparse”?
De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.
Kan jeg skrive og køre kode i denne Python Academy-lektion?
Ja. Alle Python Academy-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.
Alle lektioner i dette kursus
- Grundlæggende om argparse
- Underkommandoer og indstillinger
- Click-biblioteket
- Indholdsrigt terminaloutput