01.
def
tira_vogais(cadeia):
02.
"""Retira as vogais e substitui por um espaço em branco.
03.
"""
04.
vogais
=
'aeiou'
05.
nova_cadeia
=
''
06.
for
conta
in
range(len(cadeia)):
07.
if
cadeia[conta]
in
vogais:
08.
nova_cadeia
=
nova_cadeia
+
' '
09.
else
:
10.
nova_cadeia
=
nova_cadeia
+
cadeia[conta]
11.
return
nova_cadeia
Notar, na solução acima, como conseguimos evitar testes complexos com todos os caracteres, substituindo esses teste por uma única instrução de pertença.
Ainda se pode melhorar o programa introduzindo uma ideia nova: podemos percorrer a cadeia de caracteres pelos valores em vez de ser pelos índices! Durante o curso aprofundaremos esta ideia.
01.
def
tira_vogais_b(cadeia):
02.
"""Retira as vogais e substitui por um espaço em branco.
03.
"""
04.
vogais
=
'aeiou'
05.
nova_cadeia
=
''
06.
for
car
in
cadeia:
07.
if
car
in
vogais:
08.
nova_cadeia
=
nova_cadeia
+
' '
09.
else
:
10.
nova_cadeia
=
nova_cadeia
+
car
11.
return
nova_cadeia
Devemos portanto assumir que o objectivo do exercício é usar a concatenação de strings, e não explorar as soluções que os métodos do python nos oferece?
ResponderEliminarCerto. Também mostra que o facto de as cadeias serem objectos imutáveis, obriga-nos a fabricar a solução do modo indicado.
ResponderEliminar