Powiedzmy mam listę,pythonowy Circular Lista
l = [1, 2, 3, 4, 5, 6, 7, 8]
chcę chwycić indeks dowolnego elementu i wartości swoich sąsiadów. Na przykład,
i = l.index(n)
j = l[i-1]
k = l[i+1]
Jednakże w przypadku, gdy krawędź i == len(l) - 1
to się nie powiedzie. Tak więc pomyślałem, że po prostu owijałem,
if i == len(l) - 1:
k = l[0]
else:
k = l[i+1]
Czy jest to pythonic sposób to zrobić?
Czy chcesz zachować specjalne zachowanie, nawet jeśli indeks jest mniejszy niż zero lub większy niż długość listy? – jimifiki
Tylko do zawijania. Zawsze chcę, żeby 'j' i' k' wskazywały na coś. I chcę móc przechodzić całą listę przez 'j' lub' k'. – john
zaakceptowałeś odpowiedź, nie dbając o indeksy poza zasięgiem ... – jimifiki