Comentários?
Outras soluções?
Perguntas?
#----------------------------------------------------------- def main(): '''(None) -> None Função que lê um texto (string) e imprime todas as palavras do texto apenas uma vez, e o número de vezes que cada palavra aparece no texto. ''' texto = input("Digite um texto: ") palavras = separa(texto) lista = [] no_ocorrencias = [] for p in palavras: i = indice(p, lista) if i == None: lista.append(p) no_ocorrencias.append(1) else: no_ocorrencias[i] += 1 n = len(lista) for i in range( n): print(lista[i],':',no_ocorrencias[i]) #----------------------------------------------------------- def indice(x, lista): '''(objeto, list) -> int ou None Recebe um objeto x e retorna um índice i tal que lista[i] == x. Caso x não esteja na lista retorna None. ''' n = len(lista) for i in range( n):
if x == lista[i]: return i return None