Ako môžem mať skript Python, ktorý a) môže prijímať vstup od používateľa a ako ho môžem b) načítať argumenty, ak je spustený z príkazového riadku?
Na čítanie vstupu od používateľa môžete vyskúšať modul cmd
na jednoduché vytvorenie minipríkazového riadka (s pomocnými textami a automatickým dokončovaním) a raw_input
(input
pre Python 3+) na čítanie riadku textu od používateľa.
text = raw_input("prompt") # Python 2
text = input("prompt") # Python 3
Vstupy príkazového riadku sú v súbore sys.argv
. Vyskúšajte to vo svojom skripte:
import sys
print (sys.argv)
Existujú dva moduly na analyzovanie možností príkazového riadka: (zastaraný od Pythonu 2.7, namiesto neho používajte optparse
argparse
) a getopt
. Ak chcete do svojho skriptu iba vkladať súbory, využite silu fileinput
.
Odkaz na knižnicu Python je vaším priateľom.
Najlepším spôsobom spracovania argumentov príkazového riadku je modul argparse
.
Na získanie vstupu od používateľa použite raw_input()
. Ak importujete modul readline
, vaši používatelia budú mať k dispozícii editáciu riadkov a históriu.