Ejercicios Lección 3
Ejercicios de lo aprendido en la leccion 3
El caso de Camello
Fuente: en.wikipedia.org/wiki/Camel_case
En algunos idiomas, es común usar mayúsculas (también conocidas como "mayúsculas mixtas") para los nombres de variables cuando esos nombres comprenden varias palabras, donde la primera letra de la primera palabra está en minúscula pero la primera letra de cada palabra posterior está en mayúscula. . Por ejemplo, mientras que una variable para el nombre de un usuario podría llamarse name
, una variable para el nombre de un usuario podría llamarse firstName
y una variable para el nombre preferido de un usuario (por ejemplo, apodo) podría llamarse preferredFirstName
.
Python, por el contrario, recomienda el caso de serpiente , donde las palabras están separadas por guiones bajos ( _
), con todas las letras en minúsculas. Por ejemplo, esas mismas variables se llamarían name
, first_name
y preferred_first_name
, respectivamente, en Python.
En un archivo llamado camel.py
, implemente un programa que solicite al usuario el nombre de una variable en caso de camello y genere el nombre correspondiente en caso de serpiente. Supongamos que la entrada del usuario será en formato camello.
Consejos
Recuerde que a
str
viene con bastantes métodos, según docs.python.org/3/library/stdtypes.html#string-methods .Al igual que a
list
, astr
es "iterable", lo que significa que puedes iterar sobre cada uno de sus caracteres en un bucle. Por ejemplo, sis
es unstr
, podrías imprimir cada uno de sus caracteres, uno a la vez, con un código como:for c in s: print(c, end="")
Máquina de coque
Supongamos que una máquina vende botellas de Coca-Cola (Coca-Cola) a 50 céntimos y sólo acepta monedas de estas denominaciones: 25 céntimos, 10 céntimos y 5 céntimos.
En un archivo llamado coke.py
, implemente un programa que solicite al usuario que inserte una moneda, una a la vez, informándole cada vez del monto adeudado. Una vez que el usuario haya ingresado al menos 50 centavos, indique cuántos centavos de cambio se le deben al usuario. Supongamos que el usuario solo ingresará números enteros e ignorará cualquier número entero que no sea una denominación aceptada.
Solo arreglando mi X
Al enviar mensajes de texto o twittear, no es raro acortar las palabras para ahorrar tiempo o espacio, como omitiendo vocales, de forma muy parecida a como X se llamaba originalmente twttr . En un archivo llamado twttr.py
, implemente un programa que solicite al usuario un str
texto y luego genere ese mismo texto pero con todas las vocales (A, E, I, O y U) omitidas, ya sea que se ingresen en mayúsculas o minúsculas.
Consejos
Recuerde que a
str
viene con bastantes métodos, según docs.python.org/3/library/stdtypes.html#string-methods .Al igual que a
list
, astr
es "iterable", lo que significa que puedes iterar sobre cada uno de sus caracteres en un bucle. Por ejemplo, sis
es unstr
, podrías imprimir cada uno de sus caracteres, uno a la vez, con un código como:for c in s: print(c, end="")
#[Platos de tocador
En Massachusetts, sede de la Universidad de Harvard, es posible solicitar una matrícula personalizada para su automóvil, con su elección de letras y números en lugar de números aleatorios. Sin embargo, entre los requisitos se encuentran:
- "Todos los platos personalizados deben comenzar con al menos dos letras".
- “… los platos personalizados pueden contener un máximo de 6 caracteres (letras o números) y un mínimo de 2 caracteres”.
- “Los números no se pueden utilizar en medio de un plato; deben llegar al final. Por ejemplo, AAA222 sería un plato de tocador aceptable...; AAA22A no sería aceptable. El primer número utilizado no puede ser un '0'”.
- "No se permiten puntos, espacios ni signos de puntuación".
En plates.py
, implemente un programa que solicite al usuario un plato de tocador y luego genere Valid
si cumple con todos los requisitos o Invalid
no. Supongamos que todas las letras en la entrada del usuario estarán en mayúsculas. Estructura tu programa según lo siguiente, donde is_valid
regresa True
si s
cumple con todos los requisitos y False
si no los cumple. Supongamos que s
será un str
. Le invitamos a implementar funciones adicionales para is_valid
llamar (por ejemplo, una función por requisito).
def main():
plate = input("Plate: ")
if is_valid(plate):
print("Valid")
else:
print("Invalid")
def is_valid(s):
...
main()
Consejos
- Recuerde que a
str
viene con bastantes métodos, según docs.python.org/3/library/stdtypes.html#string-methods . - Al igual que a
list
, astr
es una "secuencia" (de caracteres), lo que significa que se puede " dividir " en cadenas más cortas con una sintaxis similar as[i:j]
. Por ejemplo, sis
es"CS50"
, entoncess[0:2]
sería"CS"
.
información nutricional
La Administración de Alimentos y Medicamentos de EE. UU. (FDA) ofrece carteles descargables/imprimibles que “muestran información nutricional de las 20 frutas crudas que se consumen con mayor frecuencia... en los Estados Unidos. Las tiendas minoristas pueden descargar los carteles, imprimirlos, exhibirlos y/o distribuirlos a los consumidores cerca de los alimentos relevantes en las tiendas”.
En un archivo llamado nutrition.py
, implemente un programa que solicite a los consumidores que ingresen una fruta (sin distinguir entre mayúsculas y minúsculas) y luego genere la cantidad de calorías en una porción de esa fruta, según el cartel de frutas de la FDA , que también está disponible como texto . Dejando a un lado las mayúsculas, suponga que los usuarios ingresarán frutas exactamente como está escrito en el cartel (por ejemplo, strawberries
no strawberry
). Ignora cualquier entrada que no sea una fruta.
Consejos
En lugar de utilizar un condicional con 20 expresiones booleanas, una para cada fruta, ¡es mejor utilizar un
dict
para asociar una fruta con sus calorías!Si
k
es astr
yd
es adict
, puede verificar sik
es una claved
con un código como:if k in d: ...
¡Tenga cuidado de producir las calorías de la fruta, no las calorías de la grasa!