no se puede hacer un bucle más de una vez – bucle for (Python)
La tarea aquí es:
A. match_ends
Dada una lista de cadenas, devolver el conteo de la cantidad de
cadenas donde la longitud de la cadena es de 2 o más y el primero
y último carácter de la cadena son iguales.
Nota: python no tiene un operador ++, pero += funciona.
def match_ends(palabras):
for i in palabras:
if (len(i) >= 2) and (i[0] == i[-1]):
return [i]
print(match_ends([‘aba’, ‘xyz’, ‘aa’, ‘x’, ‘bbb’]))
y la salida es:
[‘aba’]
davy.ai
Explicación:
La función
match_ends
toma una lista de cadenas como parámetro de entrada. Itera a través de cada cadena en la lista usando un buclefor
.Para cada cadena, verifica si su longitud es mayor o igual a 2 (usando
len(i) >= 2
) y si el primer y último caracteres son iguales (usandoi[0] == i[-1]
).Si las condiciones son verdaderas, devuelve la cadena (usando
return [i]
). Ten en cuenta que el valor de retorno es una lista que contiene la cadena.En la instrucción
print
, llamamos a la funciónmatch_ends
con la lista de entrada['aba', 'xyz', 'aa', 'x', 'bbb']
y se imprime el resultado.Dado que solo la primera cadena en la lista (
'aba'
) cumple las condiciones de la función, se devuelve y se imprime como resultado.