Хорошо, я нашел себя: removeItem изменяет список, перемещая каждый последующий элемент на один индекс вперед, в то время как индекс l oop остается прежним. Так что внутри циклы in только l oop через индекс. Я думал, что они принимают во внимание, когда список меняется. узнал что-то новое снова :-) Итак, мое решение просматривает список сзади, поэтому удаление элемента не влияет на индекс, потому что он рассчитывает спереди:
itm_cnt = len (w.items)
idx = itm_cnt - 1
print (itm_cnt)
while (idx >= 0):
if (type (w.items [idx]) == gl.GLLinePlotItem):
print (idx, w.items [idx])
# w.removeItem (w.items [idx])
del w.items [idx]
idx -= 1
Надеюсь, это поможет кому-то еще , Martin