Filtrando elementos em uma lista em Python

26/08/2020

0

Criei uma função para listar todas as letras do alfabeto, tanto minúsculas quando maiúsculas:
def charRange(c1, c2):
lista = []
for c in range (ord(c1), ord(c2)+1):
lista = lista + [chr(c)]
return lista

alfaMaior = charRange('A', 'Z')
alfaMenor = charRange('a', 'z')

Criei uma função para filtrar apenas os que estão contidos em alfaMaior e alfaMenor:
def filtro(x):
for i in x:
if (i in alfaMaior or alfaMenor):
m.append(i)
else:
continue

Criei a lista 'm' onde o resultado do filtro ficaria, o x que é a mensagem de entrada, transformei em uma lista, chamei a função 'filtro' e fiz com que tudo contido na lista fosse imprimido como lowercase:
m = []
x = input()
msg = list(x)
filtro(msg)
str = ""
print(str.join(m).lower())


Ainda assim, o código não está funcionando como deveria, o filtro ainda está aceitando elementos não contidos nas duas listas definidas. Poderiam me ajudar a encontrar o erro?
Lucas Martins

Lucas Martins

Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar