2011-06-09 14 views
12

w języku Python Jak mogę przeglądać listę zaczynając od klucza, a nie od początku. np.Zapętlenie listy z określonego klucza na końcu listy

l = ['a','b','c','d'] 

przechodzi przez l, ale zaczynając od b np. l[1]

+0

Chcesz rozpocząć się na drugiej pozycji na liście, czy chcesz rozpocząć przy pierwszym wystąpieniu "klucza" '' b''? –

Odpowiedz

30

Wystarczy użyć slicing:

>>> l = ['a','b','c','d'] 
>>> for i in l[1:]: 
...  print i 
... 
b 
c 
d 

będzie generować nową listę z rzeczami przed 1 usunięte:

>>> l[1:] 
['b', 'c', 'd'] 
4

Ta pętla przez przedmioty wl rozpoczynających się od 1:

for i in l[1:]: 
    #do something with i 
3

Składnia dla ukrojenia takiej listy to: l[1:]

Aby odpowiedzieć na to pytanie:

for i in l[1:]: 
    print i 
5

Moja 5 centów:

start_from = 'b' 

for val in l[l.index(start_from) if start_from in l else 0:]: 
    print val 
Powiązane problemy