Python:
Läsa in kommandoradsargument
How to (Hur gör man):
import sys
# Skriv ut alla argument som programmet får
if len(sys.argv) > 1:
print(f"Argument från kommandoraden: {sys.argv[1:]}")
else:
print("Inga argument givna.")Kör programmet så här i terminalen:
python ditt_program.py arg1 arg2Exempel på output:
Argument från kommandoraden: ['arg1', 'arg2']Deep Dive (Djupdykning):
Historiskt sett har kommandoradsargument använts i många typer av programspråk och operativsystem, vilket gör det till en standard för att interagera med program i terminaler eller kommandotolkar. Python’s sys modulen är den traditionella metoden för att hantera dessa argument. Modulen argparse är dock en mer kraftfull och flexibel lösning, som erbjuder parsing av argument och automatisk hjälptext. För specifika uppgifter och stora projekt är det ofta ett bättre val.
För att läsa in argument, tillgängliggör sys modulen en lista som heter argv. Den håller programmets namn på index 0 och resten är argumenten som följer efter. argv står för ‘argument values’.
När det gäller implementation, måste man hantera fel som kan uppstå vid inkorrekt input. Programmeraren bör lägga till kontroller för att säkerställa att argumenten som ges är i det förväntade formatet och antalet.
See Also (Se även):
- Python’s officiella dokumentation om
sysmodulen: https://docs.python.org/3/library/sys.html - Python’s officiella dokumentation om
argparsemodulen: https://docs.python.org/3/library/argparse.html - En bra guide för hur man använder
argparse: https://realpython.com/command-line-interfaces-python-argparse/ - För ett användarvänligt CLI-gränssnitt kan du kolla in
clickbiblioteket: https://click.palletsprojects.com/en/7.x/