Quindi ho giocato con python e ho notato qualcosa che mi sembra un po 'strano. La semantica di -1
nella selezione da un elenco non sembra essere coerente.Elenco Python/selezione sottolista -1 stranezza
quindi ho un elenco di numeri
ls = range(1000)
L'ultimo elemento della lista, se ovviamente ls[-1]
ma se prendo un elenco secondario di quel modo che io ottenere tutto da dire che il punto medio fino alla fine lo farei fare
ls[500:-1]
ma questo non mi dà un elenco contenente l'ultimo elemento della lista, ma invece un elenco contenente tutto fino all'ultimo elemento. Tuttavia, se lo faccio
ls[0:10]
ottengo una lista contenente anche l'elemento decima (quindi il selettore dovrebbe essere compreso), perché allora lo fa non funziona per -1
.
Posso ovviamente fare ls[500:]
o ls[500:len(ls)]
(che sarebbe sciocco). Mi stavo chiedendo quale fosse l'accordo con -1, mi rendo conto che non ne ho bisogno.