Imprime en pantalla únicamente los índices de aquellos nombres de la lista a continuación, que empiecen con M:
lista_nombres = ["Marcos", "Laura", "Mónica", "Javier", "Celina", "Marta", "Darío", "Emiliano", "Melisa"]
Puedes resolverlo de diferentes maneras, pero servirá que tengas presente todos o algunos de los siguientes elementos:
- Loops
- Condicionales if
- El método enumerate()
- Métodos de strings o indexado
Código del ejercicio:
Definición de los códigos del ejercicio:
lista = [1,2,3,4] --> son variables que almacenan arrays, internamente cada posición puede ser un tipo de datos distinto.for --> el bucle for se utiliza para recorrer los elementos de un objeto iterable (lista, tupla, conjunto, diccionario, …) y ejecutar un bloque de código.
in --> el operador in devuelve True si el valor se encuentra en una secuencia; False en caso contrario.
if --> use if para especificar un bloque de código que se ejecutará, si una condición especificada es verdadera.
upper() --> devuelve una cadena donde todos los caracteres están en mayúsculas.
startswith() --> devuelve True si la cadena comienza con el valor especificado; de lo contrario, False.
print() --> imprime un mensaje en la pantalla.
Explicación del Código:
Ejercicio
Crear un programa en Python que recorra una lista de nombres y muestre únicamente aquellos nombres que comiencen con la letra M.
Código Python
lista_nombres = ["Marcos", "Laura", "Mónica", "Javier", "Celina", "Marta", "Darío", "Emiliano", "Melisa"]
resultado = [value for value in lista_nombres if value.upper().startswith("M")]
print(resultado)
¿Qué hace cada código?
| Código | Función |
|---|---|
lista_nombres = [...] |
Crea una lista que contiene varios nombres. |
for value in lista_nombres |
Recorre uno por uno los nombres de la lista. |
value.upper() |
Convierte el nombre a letras mayúsculas. |
.startswith("M") |
Comprueba si el nombre comienza con la letra M. |
if |
Permite seleccionar solamente los nombres que cumplen la condición. |
resultado = [...] |
Guarda los nombres que empiezan con M en una nueva lista. |
print(resultado) |
Muestra la lista resultante en pantalla. |
Resultado
['Marcos', 'Mónica', 'Marta', 'Melisa']
Importante: índices
Si el ejercicio realmente pide mostrar los índices
de los nombres que empiezan con M, entonces debemos utilizar
enumerate().
lista_nombres = ["Marcos", "Laura", "Mónica", "Javier", "Celina", "Marta", "Darío", "Emiliano", "Melisa"]
resultado = [i for i, value in enumerate(lista_nombres) if value.upper().startswith("M")]
print(resultado)
Resultado de los índices: [0, 2, 5, 8]
No hay comentarios.:
Publicar un comentario