Я не нашел здесь подходящего ответа, который я мог бы понять. У меня есть код, который выводит то, что, как я думал, будет списком, который я мог бы перебрать, но не могу.
код:
class freqList():
def __init__(self, startFreq, stopFreq, skip):
self.startFreq = startFreq
self.stopFreq = stopFreq
self.skip = skip
def __iter__(self):
pass
def listFreqs(self):
return list(range(self.startFreq, self.stopFreq, self.skip))
def __repr__(self):
return '{}, {}, {}'.format(
self.startFreq,
self.stopFreq,
self.skip)
def __str__(self):
return 'instance object of frequency list, startFreq:{},stopFreq: {},skip: {}'.format(
self.startFreq,
self.stopFreq,
self.skip)
print('\n'*4)
listy = freqList( 1000, 5000, 1000)#range cannot use floats, only ints
print(listy.listFreqs())
print('listy type:', type(listy),'\n')
listy_iter = iter(listy)
print('listy_iter type:', type(listy_iter),'\n')
Желаемый результат
Когда я создаю экземпляр класса, я хочу, чтобы он возвращал повторяющийся объект в виде списка.
Пробовал
Я видел упоминание о next , которое необходимо переопределить, но я не знаю, что это значит, я новичок в OOP и только что получил моя голова вокруг init , str и repr .