Iniciación a la PROGRAMACIÓN MODULAR - incluye ejercicios - PYTHON 100 DÍAS #17

แชร์
ฝัง
  • เผยแพร่เมื่อ 17 ธ.ค. 2024

ความคิดเห็น • 39

  • @ProgramacionFacilYT
    @ProgramacionFacilYT  2 ปีที่แล้ว +2

    Teórica del día con todo el código y explicaciones con apuntes:
    programacionfacil.org/blog/programacion-modular-con-python/
    Ejercicios del día:
    programacionfacil.org/blog/ejercicios-de-programacion-modular-con-python/
    Soluciones de los ejercicios:
    programacionfacil.org/blog/soluciones-de-ejercicios-de-programacion-modular-con-python/

  • @josemauriciojuradomorales6718
    @josemauriciojuradomorales6718 2 ปีที่แล้ว +3

    Buena tarde, tu curso esta muy interesante y he aprendido un montón. Gracias por invertir tu tiempo en la comunidad.
    En líneas abajo a varios el código no les reconoce el nombre de los métodos (suma, resta...), me pasaba lo miso y lo corregí empleando la importación así: from operaciones2 import division, exponente, modulo, multiplicacion, resta, suma y en el llamado del código resultado = round(division.dividir(numero_1, numero_2), 2) y así para los otros operadores.

    • @ProgramacionFacilYT
      @ProgramacionFacilYT  2 ปีที่แล้ว

      Hola, muchas gracias. El último ejercicio tenía un fallo. Lo explico al final del capítulo 18 que acabo de subir. ¡Saludos!

  • @ramonpg1481
    @ramonpg1481 ปีที่แล้ว +1

    Genial, como todo lo que explicas. Más claro imposible

  • @JulioZygadlo
    @JulioZygadlo 10 หลายเดือนก่อน +2

    Muy buena clase y muy clara su explicación.

  • @JimyDrive
    @JimyDrive 2 ปีที่แล้ว +3

    Estás haciendo un excelente trabajo con este curso. Mil gracias

  • @FcoJRuizC
    @FcoJRuizC 2 ปีที่แล้ว

    Perfecta explicación. Me ha quedado clarísimo. Mil gracias

  • @ProgramacionFacilYT
    @ProgramacionFacilYT  2 ปีที่แล้ว +1

    CONTENIDO DEL DÍA 17
    00:12 Parte teórica
    00:40 ¿Qué es la programación modular?
    00:52 ¿Qué aporta la programación modular?
    01:30 Tecnología modular
    03:27 ¿Cómo se crea un módulo en Python?
    03:42 El módulo (biblioteca) Tkinter y sus submódulos
    04:41 Creando un módulo en Python
    06:03 Namespace (espacio de nombres) y scope (alcance o ámbito)
    06:11 ¿Qué es el alcance o scope?
    06:21 Alcance local y global
    09:10 ¿Qué son los namespace?
    09:53 Comunicar el espacio de nombres local con el global
    11:14 ¿Por qué el "espacio de nombres" se llama así?
    11:25 Colisiones de nombres
    12:51 El alcance de bloque en Python
    18:15 Uso del wildcard, comodín (*) en las importaciones
    19:16 Importar el módulo math de Python
    20:04 Problemas con el wildcard de las importaciones
    26:00 Alias en las importaciones de Python
    26:52 Depurar código
    27:12 Extensión VSCode corrector ortográfico en español
    27:51 ¿Qué es la depuración del código?
    28:31 Buenas prácticas con alias en Python
    29:19 Importar módulos propios o de terceros
    29:26 Crear tu propio módulo de Python
    30:08 Importar tu propio módulo de Python
    32:42 Importar módulos en carpetas con Python
    35:55 Parte práctica
    36:07 Ejercicio resuelto de Python
    37:50 Proyecto resuelto de Python

  • @alondrasuarez4719
    @alondrasuarez4719 2 ปีที่แล้ว +2

    Excelente video. Por favor, continúa con el curso. Saludos

    • @ProgramacionFacilYT
      @ProgramacionFacilYT  2 ปีที่แล้ว

      ¡Muchas gracias! Sí, hoy hay nuevo capítulo triple, bastante largo. ¡Saludos!

  • @josedelossantosperezgalvis7609
    @josedelossantosperezgalvis7609 ปีที่แล้ว

    Son muy buenos para el aprendizaje y el entendimiento este tipo de de videos. Gracias

  • @mirandaquiroga
    @mirandaquiroga 2 ปีที่แล้ว +1

    mil gracias por compartir este curso y tus conocimientos

    • @ProgramacionFacilYT
      @ProgramacionFacilYT  2 ปีที่แล้ว

      ¡Muchas gracias! Y lo que queda todavía 😃. ¡Saludos!

  • @diegogomez236
    @diegogomez236 ปีที่แล้ว

    Que buen video mi hermano. muchas gracias por tan buen contenido

  • @jorgeayala7818
    @jorgeayala7818 2 ปีที่แล้ว +1

    Cómo siempre..el mejor

  • @ElNasusVC
    @ElNasusVC ปีที่แล้ว

    Importante solo para aquellos que les interesa 08:41: Entonces como puedo trabajar con mi función según lo que ella hace en todo el correr del programa? si a mi me interesa algo especifico de una función que tengo, como puedo tomar ese valor sin la necesidad de tener que retornar la función(porque no siempre vamos a retornar mas de un valor, esto depende de tu programa)?
    Bueno, esto fue algo en lo que me encontré en aprietos, en el proyecto de hacer un login para la tienda de las motos, yo lo hice con Tkinter, Pyhton y MySQL, MySQL Workbench. a su vez hice también una interfaz muy sencilla para la tienda, mysql almacenaba los productos y los users information. pero a medida que iba avanzando( se me hizo un lio el tema de destruir ventanas y declarar una nueva como principal, porque no me gustaba que se abriera una ventana arriba de la otra con TopLevel a no ser que quisiera yo de alguna forma crear una ventana flotante que me diera un mensaje como "Gracias por tu compra" o algo así) me surgió la necesidad de mostrar, en la interfaz de la tienda, el nombre del usuario logueado actualmente(si ingresas, que la tienda, en una esquina muestre tu nombre básicamente) pero aquí me enfrente al grandioso tema de Scopes, y es que había una función especifica que traía todo de la Base de datos(Función Login) y el problema es que entre ellos traía el nombre del usuario, pero el problema era que yo declaraba una variable en dicha función que tomaría el valor del nombre del usuario logueado luego de traerlo por consultas SQL y posteriormente recibirlo con una tupla. tenia muchas soluciones realmente, pero la mas clara eran dos(Pensemos que todo mi login eh interfaz de tienda, estaba construido solo con funciones a excepción de la ventana principal, ya que me vi en la necesidad de darle la oportunidad al usuario de desloguearse, y volver a entrar, volver hacia atrás etc, la única forma que encontré para realizar esta " libertad del usuario" era a funciones) , una vez el usuario este en la interfaz de la tienda, traerme alli el nombre del usuario, problema? que estaría haciendo lo mismo que la vez anterior, estaría limitando el scope de esa variable solo a la interfaz de la tienda(donde se muestran todos los productos etc), la otra solución definitiva, es que cuando se vean en la necesidad de trabajar solo con una cosa especifica de su función que no necesariamente la quieren retornar, les invito a que creen esa variable en el alcance global del programa y en la funcion, antes de utilizarla, colocan: global , para luego si utilizarla en su función para x cosa, esto que hace? le dejamos en claro a la funcion que esa variable, no le corresponde un alcance local, sino que su Scope será Global, por ende, lo que pase en la función, afectara en el alcance global también, de esta forma, el nombre del usuario, en mi programa podía mostrarlo donde quisiera(siempre que este logueado el usuario claro)

  • @jalsecuador2216
    @jalsecuador2216 2 ปีที่แล้ว

    Hoy he aprendido muchas cosas👍

  • @franciscojavierhishikawaas3810
    @franciscojavierhishikawaas3810 9 หลายเดือนก่อน

    Hola, felicitaciones muy buen curso. Muchísimas gracias port tus aportaciones para mi aprendizaje en Python. Mencionaste que tienes un corrector de texto en español, me gostaria saber dónde lo puedo obtener. Saludos y muy grato. Abrazos desde Brasil.

  • @villanuevatrejo
    @villanuevatrejo 2 ปีที่แล้ว

    Hola, pregunta: Como configuras o que descargas en VSC para que las funciones que te pudieran dar problemas ej. 17:21 se subrayen de rojo, ya que a mi no me avisa nada.

  • @josedelossantosperezgalvis7609
    @josedelossantosperezgalvis7609 ปีที่แล้ว +1

    Hola, para poder realizar el ejercicio con éxito, tuve que colocar la importación completa: import operaciones.suma as sum , y luego llamar al módulo con: sum.suma (numero1, numero2) Intenté hacerlo sólo con import operaciones pero me generaba un error...

  • @enjoythelive337
    @enjoythelive337 5 หลายเดือนก่อน

    Muchas gracias por el aporte!. Yo no puedo importar a no ser que lo tenga en la misma carpeta los módulos que el archivo al que hago la importación. Alguien me puede decir qué estoy haciendo mal? Mil gracias!!!

  • @WayraInnovaTech
    @WayraInnovaTech ปีที่แล้ว

    Una consulta, no me funciona con "from operaciones import *" , a que se deberá?
    solo me funciona con "import operaciones as op *"
    gracias, saludos

  • @josemauriciojuradomorales6718
    @josemauriciojuradomorales6718 2 ปีที่แล้ว

    Ahora tengo una inquietud, como hacemos para que los resultados numéricos ya sea por consola o Tkinter se muestren con la separación de los puntos de mil, ejemplo $25.500 gracias.

    • @ProgramacionFacilYT
      @ProgramacionFacilYT  2 ปีที่แล้ว

      Hola, quizás esto te sirva. Alguien me preguntó hace algún tiempo lo mismo:
      th-cam.com/users/shortsb6pNDZNrfAg

  • @nahuela3510
    @nahuela3510 ปีที่แล้ว +1

    Yo no se si hice mal pero me salte tkinter porque no me dejaba descargar las imágenes y pase directo acá

    • @ProgramacionFacilYT
      @ProgramacionFacilYT  ปีที่แล้ว +1

      Hola, bueno, más adelante seguimos con Tkinter para más proyectos, pero si te saltas solo el capítulo 14 con el tema de las imágenes, seguramente puedas seguir el resto del curso. ¿Qué imágenes no te dejaba descargar? ¿Las que tengo en mi web?

    • @nahuela3510
      @nahuela3510 ปีที่แล้ว

      @@ProgramacionFacilYT ya me dejo

  • @luisllorensmompo
    @luisllorensmompo 2 ปีที่แล้ว

    Me pone
    suma not defined
    resta not defined
    multiplicacion not defined
    ...
    Y así con todas

  • @j.k.dystopik7506
    @j.k.dystopik7506 ปีที่แล้ว

    POW!!

  • @luisllorensmompo
    @luisllorensmompo 2 ปีที่แล้ว +1

    Sólo me reconoce los módulos de la misma carpeta, pero no desde otra carpeta diferente

    • @ProgramacionFacilYT
      @ProgramacionFacilYT  2 ปีที่แล้ว

      Hola, asegúrate que tienes el archivo desde el que haces las importaciones, en la raíz (por ejemplo). En esta misma carpeta, se supone que tienes otra que se llama operaciones.
      En ese caso, con "import operaciones" te tendría que importar todos los módulos que tengas dentro de la carpeta operaciones.

    • @villanuevatrejo
      @villanuevatrejo 2 ปีที่แล้ว

      @@ProgramacionFacilYT Hola disculpa, tengo el mismo problema teniendo: from operaciones import * Me saca: NameError: name 'suma' is not defined. Teniendo suma.py dentro de operaicones y calculadora.py dentro de carpeta calculadora, lo mismo para los otros.

    • @villanuevatrejo
      @villanuevatrejo 2 ปีที่แล้ว

      Hola, si hago esto: from operaciones.suma import * si entra a la carpeta operaciones y funciona solo para suma, pero entonces como llamo a los demás?. Saludos

    • @mauriciogastonfragapane5717
      @mauriciogastonfragapane5717 ปีที่แล้ว

      @@villanuevatrejo
      Me pasa lo mismo. He probado sacando el archivo fuera de la raiz e importando calculadora.operaciones pero no funcionaba tampoco.
      Tuve que importar los modulos individualmente para que funcionen
      import operaciones.suma as sum
      import operaciones.resta as res
      import operaciones.multiplicacion as mul
      import operaciones.division as div
      import operaciones.modulo as mod
      import operaciones.exponente as exp
      De esta manera queda nuevamente funcional la calculadora.
      Un saludo