#!/usr/bin/python # -*- coding: utf-8 -*- #Autor: Erickson Silva #Email: #LAViD - Laboratório de Aplicações de Vídeo Digital class Iterator(object): """Classe para iterar listas no formato da classfição morfológica [token,classificaçãosss]""" def init(self): self.count = -1 def load(self, lista): self.reset() self.list = list(lista); self.size = len(lista) def reset(self): self.count = -1 def get_size(self): return self.size def get_count(self): return self.count def get_token(self, i=None): if(i != None): return self.list[self.count+(i)] return self.list[self.count] def get_word(self): return self.get_token()[0] def get_ticket(self): return self.get_token()[1] def get_next_word(self): return self.get_token(1)[0] def get_next_ticket(self): return self.get_token(1)[1] def get_prev_word(self): return self.get_token(-1)[0] def get_prev_ticket(self): return self.get_token(-1)[1] def get_interval(self, n): if self.count+n > self.size: raise IndexError return self.list[self.count:self.count+n] def skip(self, n): self.count += n def has_next(self): if(self.count < self.size-1): self.count += 1 return True return False