Hvordan får jeg et Python-script, der a) kan acceptere brugerinput, og hvordan får jeg det b) til at læse argumenter, hvis det køres fra kommandolinjen?
For at læse brugerinput kan du prøve modulet cmd
til nemt at skabe en mini kommando linjetolker (med hjælpetekster og autokomplettering) og raw_input
(input
for Python 3+) til at læse en linje tekst fra brugeren.
text = raw_input("prompt") # Python 2
text = input("prompt") # Python 3
Kommandolinjeindgange er i sys.argv
. Prøv dette i dit script:
import sys
print (sys.argv)
Der er to moduler til parsing af kommandolinjeindstillinger: (deprecated siden Python 2.7, brug optparse
argparse
i stedet) og getopt
. Hvis du blot ønsker at indtaste filer i dit script, kan du se kraften i fileinput
.
Python library reference er din ven.
Den bedste måde at behandle kommandolinjeargumenter på er argparse
-modulet.
Brug raw_input()
til at få brugerens input. Hvis du importerer readline
-modulet` vil dine brugere få mulighed for at redigere linjer og historik.