Ho riscontrato un piccolo problema con argparse
. Ho un'opzione xlim
che è lo xrange
di un grafico. Voglio essere in grado di passare numeri come -2e-5
. Tuttavia questo non funziona - interpreti argparse
questo è un argomento posizionale. Se faccio -0.00002
funziona: argparse
lo legge come numero negativo. È possibile avere la capacità di leggere in -2e-3
?Python Argparse: problema con argomenti facoltativi che sono numeri negativi
Il codice è al di sotto, e un esempio di come vorrei correre che è:
./blaa.py --xlim -2.e-3 1e4
Se faccio la seguente funziona:
./blaa.py --xlim -0.002 1e4
Il codice:
parser.add_argument('--xlim', nargs = 2,
help = 'X axis limits',
action = 'store', type = float,
default = [-1.e-3, 1.e-3])
Anche se riesco a farlo funzionare in questo modo, preferirei utilizzare la notazione scientifica. Qualcuno ha qualche idea?
Acclamazioni
Il quoting '-2e-5' è d'aiuto? – nmichaels
Secondo http://code.google.com/p/argparse/issues/detail?id=37 avrebbe dovuto essere riparato. Controlla se la versione di argparse che hai è più nuova o uguale. – favoretti
@nmichaels Ciao, vuoi dire "-2e-5"? Sfortunatamente non funziona, penso che lo interpreti ancora come un argomento. L'errore esatto da './blah.py -xlim" -.2e-5 "1e5' è --xlim: 2 argomento (i) previsto (i). Se uso \ - si pensa che sia una stringa e poi si lamenta perché dovrebbe essere un float – Ger