2016-03-01 4 views
-1

У меня есть векторный класс, который мне нужно перебирать. Класс содержит переменную списка. Мне нужно перебирать класс.Итерация через класс python

Я не уверен, как бы я это сделал. Мне нужно использовать __iter__ и его предположение, что я использую yield, вот результат, что я хочу:

[x*2 for x in Vector([3,3.25,"foo"])] 
[6, 6.5, 'foofoo'] 

Iter должен возвращать объект, который может выполнять итерацию по элементам вектора. Как бы я это делал, я никогда раньше не использовал __iter__.

+0

Могу ли я рекомендовать не перезаписывать объект класса по умолчанию с вашим именем параметра? Не ваша проблема, но, вероятно, не помогает никому –

+0

И что это побитово или делать в строке 5? Ничего хорошего я не ставлю –

+0

с использованием '|' для логического или. Python имеет ключевое слово 'или' –

ответ

0

В основном:

def __iter__(self): 
    for elt in self.l: 
     yield elt 
Смежные вопросы