def __init__(self): self.lista_liga = ListaLigada() self.automata = Automata() self.linea: int = 0 self.linea_lista = ListaLigada() self.linea_errores: str = None self.log_error: str = None
def main(): loja1 = Loja("Mercadinho", "Rua das Laranjeiras, 12") loja2 = Loja("Hortifruti", "Rua do Pomar, 300") loja3 = Loja("Padaria", "Rua das Flores, 600") loja4 = Loja("Supermercado", "Alameda Santos, 400") loja5 = Loja("Mini Mercado", "Rua da Fazenda, 900") loja6 = Loja("Quitanda", "Avenida Rio Branco, 34") lista = ListaLigada() lista.inserir_no_inicio(loja1) lista.inserir_no_inicio(loja2) lista.inserir_no_inicio(loja3) lista.inserir(1, loja4) lista.inserir(0, loja5) lista.inserir(lista.quantidade, loja6) print(lista.quantidade) lista.imprimir() print("") removido = lista.remover_do_inicio() print("Removido {}".format(removido)) removido = lista.remover_do_inicio() print("Removido {}".format(removido)) print("") print(lista.quantidade) lista.imprimir() removido = lista.remover(2) print("") print(lista.quantidade) lista.imprimir() print("Removido da posicao 2: {}".format(removido)) removido = lista.remover(2) print("") print(lista.quantidade) lista.imprimir() print("Removido da última posição: {}".format(removido)) removido = lista.remover(0) print("") print(lista.quantidade) lista.imprimir() print("Removido do início: {}".format(removido)) print('Item 0') print(lista.item(0))
def main(): loja1 = Loja("Mercadinho", "Rua das Laranjeiras, 12") loja2 = Loja("HortiFruti", "Rua do Pomar, 300") loja3 = Loja("Padaria", "Rua das Floes, 600") loja4 = Loja("Supermecado", "Alameda Santos, 400") loja5 = Loja("Mini Mercado", "Rua da Fazenda, 900") loja6 = Loja("Quitanda", "Avenida Rio Branco, 34") lista = ListaLigada() lista.insert_at_start(loja1) lista.insert_at_start(loja2) lista.insert_at_start(loja3) lista.insert_at_start(loja4) lista.insert_at_start(loja5) lista.insert_at_start(loja6) lista.insert_at_any_position(1, loja2) print("======== Inserções ========\n") lista.imprimir() print("\nQuantidade de itens: ", end="") print(lista.quantity) print("\n\n======== Remoções no início ========\n") removido = lista.remove_at_start() print("Removido: {}".format(removido)) removido = lista.remove_at_start() print("Removido: {}".format(removido)) print("\nQuantidade de itens: ", end="") print(lista.quantity) print("\n\n======== Remoções em qualquer posição ========\n") removido = lista.remove_at_any_position(2) print("Removido da posicao 2: {}".format(removido)) removido = lista.remove_at_any_position(0) print("Removido da posicao 0: {}".format(removido)) print("\n\n======== Lista Resultante ========\n") lista.imprimir() print("\nQuantidade de itens: ", end="") print(lista.quantity) print("\n\n========Printando na posição específica ========\n") print(lista.item(0))
def analizar_linea(self, linea_texto: str = None): self.linea += 1 self.linea_lista = ListaLigada() self.linea_errores = '' logger_modulo.info(f"Procesando la linea {self.linea} : {linea_texto}") patron = f"({'|'.join(CARACTERES_ESPECIALES)})" palabras = re.sub(pattern=patron, repl=r" \1 ", string=linea_texto) try: palabras = shlex.split(palabras, posix=False) except ValueError: logger_modulo.error( f"error en linea {self.linea}: falto cierre de parentesis") return for p in palabras: nodo = Nodo(p) # self.lista_liga.encolar(nodo) self.linea_lista.encolar(nodo) self.automata.establecer_estado(nodo, self.linea) logger_modulo.info(self.linea_lista)
def __init__(self): self.pilha = ListaLigada()