Co właściwie robi składnia rozszerzonego plasterka dla kroków ujemnych? [duplikować]
To pytanie ma już tutaj odpowiedź:
Zrozumienie notacji plasterków 31 odpowiedziRozszerzona składnia plasterka w pytonie została mi wyjaśniona jako „a[n:m:k] returns every kth element from n to m
„
To daje mi dobry pomysł, czego się spodziewać, gdy k jest dodatnie. Ale zgubiłem się w interpretacjia[n:m:k]
za ujemne k. wiem toa[::-1]
odwraca a, i toa[::-k]
przyjmuje zawsze k-element odwróconego a.
Ale jak to uogólnia definicję k dodatniego? Chciałbym wiedzieć jaka[n:m:k]
jest właściwie zdefiniowany, więc (na przykład) mogę zrozumieć, dlaczego:
"abcd"[-1:0:-1] = "dcb"
Jesta[n:m:-k]
odwracając sekwencję a, a następnie biorąc elementy z oryginalnymi indeksami zaczynając od n i kończąc na m przed czymś? Nie sądzę, ponieważ ten wzór nie pasuje do innych wartości n i m, których próbowałem. Ale nie rozumiem, jak to jest właściwie zdefiniowane, a szukanie mnie nie prowadzi.