0% encontró este documento útil (0 votos)
3 vistas12 páginas

Menú de tasas por país en Python

Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
3 vistas12 páginas

Menú de tasas por país en Python

Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

def mostrar_menu():

print("\nEstimado Sr. Presidente, seleccione el país:")


print("1. Vietnam (46%)")
print("2. Suiza (31%)")
print("3. Laos (48%)")
print("4. Francia (20%)")
print("5. España (20%)")
print("6. Italia (20%)")
print("7. Marruecos (10%)")
print("8. Colombia (10%)")
print("9. Perú (10%)")
print("10. Ecuador (10%)")
print("11. Salir del programa")

def obtener_tasa(opcion):
tasas = {
1: ("Vietnam", 46),
2: ("Suiza", 31),
3: ("Laos", 48),
4: ("Francia", 20),
5: ("España", 20),
6: ("Italia", 20),
7: ("Marruecos", 10),
8: ("Colombia", 10),
9: ("Perú", 10),
10: ("Ecuador", 10)
}
return [Link](opcion, (None, None))

def main():
while True:
mostrar_menu()
try:
opcion = int(input("Ingrese el número del país: "))
if opcion == 11:
print("Saliendo del programa. Hasta luego, Sr. Presidente.")
break
pais, tasa = obtener_tasa(opcion)
if pais:
print(f"La tasa aplicable en {pais} es del {tasa}%.")
else:
print("Opción no válida. Por favor, intente de nuevo.")
except ValueError:
print("Entrada inválida. Ingrese un número entre 1 y 11.")

if __name__ == "__main__":
main()
Estimado Sr. Presidente, seleccione el país:
1. Vietnam (46%)
2. Suiza (31%)
3. Laos (48%)
4. Francia (20%)
5. España (20%)
6. Italia (20%)
7. Marruecos (10%)
8. Colombia (10%)
9. Perú (10%)
10. Ecuador (10%)
11. Salir del programa
Ingrese el número del país: 2
La tasa aplicable en Suiza es del 31%.

Estimado Sr. Presidente, seleccione el país:


...

🧠 Estructura del Script


python
CopiarEditar
def mostrar_menu():
...

Este bloque define una función llamada mostrar_menu() que simplemente imprime el
menú de opciones que el usuario verá. Las funciones te permiten organizar tu código en
bloques reutilizables.

python
CopiarEditar
def obtener_tasa(opcion):
...

Otra función que recibe un número (opcion) y devuelve el país y su tasa


correspondiente, usando un diccionario.

python
CopiarEditar
def main():
...
La función principal main() contiene la lógica principal del programa: muestra el menú,
recibe la opción del usuario, busca la tasa, y muestra la respuesta.

Finalmente:

python
CopiarEditar
if __name__ == "__main__":
main()

Este bloque indica que si este archivo se ejecuta directamente, entonces debe correr la
función main().

🧾 Línea por línea explicada


1. Mostrar el menú
python
CopiarEditar
def mostrar_menu():
print("\nEstimado Sr. Presidente, seleccione el país:")
print("1. Vietnam (46%)")
print("2. Suiza (31%)")
...

●​ print(...): Muestra texto en pantalla.​

●​ \n: Salto de línea para dejar un espacio antes del menú.​

●​ Cada print muestra una línea del menú.​

2. Guardar tasas en un diccionario


python
CopiarEditar
def obtener_tasa(opcion):
tasas = {
1: ("Vietnam", 46),
2: ("Suiza", 31),
...
}
return [Link](opcion, (None, None))

●​ Aquí usamos un diccionario (tasas) que asocia cada número con un par de
valores: el país y su tasa.​

●​ [Link](opcion, (None, None)): Busca la opción en el diccionario. Si no la


encuentra, devuelve (None, None) para saber que no es válido.​

3. Función principal
python
CopiarEditar
def main():
while True:

●​ while True: crea un bucle infinito, es decir, el menú se repite hasta que el
usuario elija salir.​

python
CopiarEditar
mostrar_menu()

●​ Llama a la función que imprime el menú.​

python
CopiarEditar
try:
opcion = int(input("Ingrese el número del país: "))

●​ input(...): Pregunta algo al usuario.​

●​ int(...): Convierte la respuesta a número.​

●​ try: intenta ejecutar el código. Si el usuario pone letras o algo inválido, no se


rompe el programa.​

python
CopiarEditar
if opcion == 11:
print("Saliendo del programa...")
break

●​ Si el usuario elige la opción 11, termina el bucle con break.​

python
CopiarEditar
pais, tasa = obtener_tasa(opcion)

●​ Aquí se usa la función obtener_tasa() para obtener el nombre del país y la tasa.​

python
CopiarEditar
if pais:
print(f"La tasa aplicable en {pais} es del
{tasa}%.")
else:
print("Opción no válida.")

●​ Si se encuentra el país, lo imprime. Si no (pais == None), dice que la opción no es


válida.​

python
CopiarEditar
except ValueError:
print("Entrada inválida. Ingrese un número entre 1 y
11.")

●​ Si el usuario escribe letras u otra cosa no convertible a número, se atrapa el error


con except y se muestra un mensaje.​

✅ ¿Qué necesitas saber para hacer esto tú?


1.​ Variables y diccionarios – para guardar pares clave-valor como país → tasa.​

2.​ Funciones (def) – para dividir tu código en bloques reutilizables.​

3.​ Entrada de usuario – con input().​

4.​ Control de errores – con try/except.​

5.​ Condicionales (if/else) – para tomar decisiones.​

6.​ /Bucles (while) – para repetir el menú hasta que el usuario decida salir.

touch
#!/bin/bash

# Comprobar que hay un solo argumento y que es un directorio


if [ "$#" -ne 1 ] || [ ! -d "$1" ]; then
echo "Uso: $0 <directorio>"
exit 1
fi

# Recorrer el contenido del directorio


for item in "$1"/*; do
if [ -d "$item" ]; then
chmod 751 "$item"
elif [ -f "$item" ]; then
chmod 644 "$item"
fi
done

#!/bin/bash

# Comprobar que se reciben dos argumentos


if [ "$#" -ne 2 ]; then
echo "Uso: $0 <nombre_carpeta> <nombre_grupo>"
exit 1
fi

CARPETA=$1
GRUPO=$2
RUTA="/usr/local/share/$CARPETA"

# Verificar que el grupo existe


if ! getent group "$GRUPO" > /dev/null; then
echo "El grupo '$GRUPO' no existe."
exit 2
fi

# Crear la carpeta
mkdir -p "$RUTA"

# Cambiar grupo propietario


chown :$GRUPO "$RUTA"

# Opcional: establecer permisos típicos de carpeta compartida


chmod 770 "$RUTA"

echo "Carpeta '$RUTA' creada y asignada al grupo '$GRUPO'.”


#!/bin/bash

# Ruta de la carpeta a copiar


ORIGEN="/carpeta_a_copiar"

# Ruta donde se guardará la copia


DESTINO="-copia_seguridad"

# Verificar que la carpeta de origen existe


if [ ! -d "$ORIGEN" ]; then
echo "La carpeta $ORIGEN no existe."
exit 1
fi

# Crear la carpeta destino si no existe


mkdir -p "$DESTINO"

# Formato de nombre: [Link]


FECHA=$(date +"%m.%d%H.%M%S")
ARCHIVO="totalaaaa$[Link]"

# Crear archivo tar


tar -cf "/tmp/$ARCHIVO" -C "$ORIGEN" .
# Comprimirlo en ZIP
zip -j "$DESTINO/$[Link]" "/tmp/$ARCHIVO"

# Limpiar el .tar temporal


rm "/tmp/$ARCHIVO"

echo "Copia realizada: $DESTINO/$[Link]”

También podría gustarte