2011-06-09 16 views
12

sonuna kadar bir listeden geçiş yapmak nasıl bir anahtardan başlayarak değil, baştan başlayarak listeye girerim. , ör.Python'da belirli bir anahtardan listeye

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

döngü l üzerinden değil b ör başlayan l[1]

+0

listedeki ikinci pozisyonda başlamak istiyor musunuz, yoksa ilk geçtiği yerdeki başlamak istersiniz "anahtar" "b" nin? –

cevap

30

Sadece slicing kullanın:

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

Daha önce öğeleri ile yeni bir listesini oluşturacaktır 1 kaldırıldı:

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

1 ile başlayan l öğeler arasında bu şekilde döngü:

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

Böyle bir listeyi dilimleme sözdizimi şöyledir: l[1:]

Soruna cevap olarak:

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

Benim 5 cent:

start_from = 'b' 

for val in l[l.index(start_from) if start_from in l else 0:]: 
    print val 
İlgili konular