Sto cercando di utilizzare il mio programma con l'opzione della riga di comando. Qui è il mio codice:Python argparse: "argomenti non riconosciuti"
import argparse
def main():
parser = argparse.ArgumentParser()
parser.add_argument("-u","--upgrade", help="fully automatized upgrade")
args = parser.parse_args()
if args.upgrade:
print "Starting with upgrade procedure"
main()
Quando si tenta di eseguire il mio programma dal terminale (python script.py -u
), mi aspetto di ottenere il messaggio Starting with upgrade procedure
, ma invece ricevo il messaggio di errore unrecognized arguments -u
.
non sto vedendo alcun messaggio di errore e sto ottenendo l'output expecpted ; Penso che potrebbe essere a causa dello spazio, scheda nel tuo programma Si prega di verificare che [viswesn.viswesn-PC] ➤ python script.py -u 10 A partire dalla procedura di aggiornamento [viswesn.viswesn-PC] ➤ python script.py -u utilizzo: script.py [-h] [-u UPGRADE] script.py: errore: argomento -u/- aggiornamento: previsto un argomento – Viswesn
L'unico problema qui, è che '-u' si aspetta un valore o qualche tipo. prova a fare 'python myscript.py -u True' – Torxed