3-COMO HACER UNA CALCULADORA AVANZADA CON PYTHON TKINTER (Parte 1)

Поделиться
HTML-код
  • Опубликовано: 31 янв 2025

Комментарии • 60

  • @nilton7120
    @nilton7120 Год назад +4

    me encanto tu explicacion a detalle en especial las partes donde explican las funciones no se como no tienes mas visualizaciones si tu explicacion fue PERFECTA ojala subieras mas videos asi espero que leas esto y veas la gran persona que eres muy eficiente :D

    • @MarxuTech
      @MarxuTech  Год назад +2

      Hola, muchas gracias por tu comentario, es muy bonito lo que dices. Y voy a pensar un poco lo que dices, tengo bastante contenido para subir y enseña pero el tiempo casi no me da y además no me siento muy seguro de hacerlo, es que siento que es una responsabilidad bastante grande tener un canal de enseñanza. ¡Saludos y bendiciones!

  • @marcoblanca2023
    @marcoblanca2023 2 года назад +1

    Excelente explicación, fácil de seguir, muy buenas aclaraciones como echor, grid, widget, etc., y sobre todo se lográ el aprendizaje haciendo y probando. Muchas gracias

  • @nelsonpalacios2853
    @nelsonpalacios2853 Год назад +23

    Aki los futuros ingenieros

  • @juanrey922
    @juanrey922 2 года назад +2

    nuevo suscriptor. espero que crezca tu canal

  • @LicitaBien
    @LicitaBien 2 месяца назад +5

    import tkinter as tk
    def agregar(digito):
    entrada.insert(tk.END, digito)
    def limpiar():
    entrada.delete(0, tk.END)
    def calcular():
    try:
    resultado = eval(entrada.get())
    entrada.delete(0, tk.END)
    entrada.insert(tk.END, str(resultado))
    except Exception as e:
    entrada.delete(0, tk.END)
    entrada.insert(tk.END, "Error")
    ventana = tk.Tk()
    ventana.title("Calculadora")
    entrada = tk.Entry(ventana, width=40, borderwidth=5, font=('Arial', 14))
    entrada.grid(row=0, column=0, columnspan=4)
    botones = [
    ('7', 1, 0), ('8', 1, 1), ('9', 1, 2), ('/', 1, 3),
    ('4', 2, 0), ('5', 2, 1), ('6', 2, 2), ('*', 2, 3),
    ('1', 3, 0), ('2', 3, 1), ('3', 3, 2), ('-', 3, 3),
    ('0', 4, 0), ('C', 4, 1), ('=', 4, 2), ('+', 4, 3)
    ]
    for texto, fila, columna in botones:
    if texto == '=':
    tk.Button(ventana, text=texto, width=10, height=3, font=('Arial', 14), command=calcular).grid(row=fila, column=columna)
    elif texto == 'C':
    tk.Button(ventana, text=texto, width=10, height=3, font=('Arial', 14), command=limpiar).grid(row=fila, column=columna)
    else:
    tk.Button(ventana, text=texto, width=10, height=3, font=('Arial', 14), command=lambda t=texto: agregar(t)).grid(row=fila, column=columna)
    ventana.mainloop()

    • @faustopo7883
      @faustopo7883 2 месяца назад

      como hiciste para que te deje poner los numeros que quieras sin usar *args?

  • @juanrey922
    @juanrey922 2 года назад +1

    Parte 3 de las funciones. eres un crack

  • @andresillanes2067
    @andresillanes2067 8 дней назад

    Podrías darme un resumen de todas las funciones que usastes porfa ?

  • @novedadesggbexcel
    @novedadesggbexcel 2 года назад +3

    LA SEGUNDA PARTE, ESTA INTERESANTE

    • @MarxuTech
      @MarxuTech  2 года назад +6

      ¡Hola!
      Ya esta disponible la segunda parte, 😃

    • @lidoazul
      @lidoazul 2 года назад

      ruclips.net/video/NUGW8Ag3hLU/видео.html

  • @lidoazul
    @lidoazul 2 года назад +1

    Saludo, muy bonito él UI, quería preguntarte como puedo dejar el número cero (0) en la pantalla de la calculadora por defecto y cuando presione una tecla desaparezca.

  • @sapereaude155
    @sapereaude155 10 месяцев назад

    Te recomendaría que subieras todo el proyecto a github. En principio porque así los que quieran probar el programa no perderán el tiempo intentando corregir los errores de las sentencias. Gracias por tu explicación por cierto.

  • @Ferxo21
    @Ferxo21 Год назад +2

    Estoy teniendo muchos problemas con la parte logica de mis programas de tkinter, podrías darme algunos consejos para mejorar? por favor, y buen video

    • @pequenogranuja6265
      @pequenogranuja6265 11 месяцев назад +1

      1. Aprende POO (ESTO TE PERMETIRA ENTENDER LA LOGICA DETRAS DE LAS LIBRERIAS)
      2. Ten una buena logica en python puro y programación (saber utilizar bien bucles, funciones y funciones propias del lenguaje python)
      2. Aprende conceptos basicos de TK (como crear botones, diferentes formas de posicionarlos, labels...)
      3. Haz pequeños proyectos como un reloj, un contador, un cambio de fondo, un clickgame, otro clickgame que vaya cambiando la ubicacion del boton de click...
      4. Ayudate de chatgpet si es necesario y sigue haciendo miniproyectos que se puedan hacer entre 30 mins y una tarde como mucho...
      5. Tras pocos pryectos simples (unos 6 o 7) vuelve a este curso y los conceptos de TK te ayudaran a entender mejor TTK,
      >

  • @condenados8435
    @condenados8435 Год назад +1

    Muy interesante esw modo oscuro y claro te felicito

  • @EnriqueRodriguez-br6dj
    @EnriqueRodriguez-br6dj Год назад +1

    Buenas a todos excelente explicación pero tengo un problema con los estilos no se aplican solo a los botones de numero si pero a los botones restantes no se quedan pequeños, saludos y espero alguna ayuda.

  • @kanondegeminis8498
    @kanondegeminis8498 2 года назад +2

    amigo tengo que realizar una calculadora para mi clase, pero no soy capaz de poner la raiz y que sea funcional, me puedes ayudar ?

  • @josespelt5726
    @josespelt5726 2 года назад +1

    Buenas, por que puede ser que cuando le aplico el estilos.theme_use a mi no me aparece con ese tema solo pone en recuadro los numeros ;c

  • @angelgabrielfernandezgrana2476
    @angelgabrielfernandezgrana2476 2 года назад +3

    la tercera parte para hacer las funciones

  • @stevefreak1974
    @stevefreak1974 Год назад

    Disculpa estoy coloco esta parte del codigo para los estilos cuando ejecuto no se ve representado
    estilos = ttk.Style()
    estilos.configure('mainframe.TFrame', backgraound="#FF0000")

    • @stevefreak1974
      @stevefreak1974 Год назад +1

      el color no es el pusiste probe varios codigos de colores y ninguno me funciono

    • @nilton7120
      @nilton7120 Год назад

      @@stevefreak1974 los haz hecho mal

    • @luismv1912
      @luismv1912 Год назад +2

      @stevefreak1974 Escribiste "backagraound" y es "background"

    • @jaimeborja9379
      @jaimeborja9379 Год назад

      tengo el mismo problema

    • @pequenogranuja6265
      @pequenogranuja6265 10 месяцев назад +1

      tu problema es que has escrito mal background, es BACKGROUND y NO backgrAound, lo entiendes?

  • @jhkim6572
    @jhkim6572 Год назад +2

    hola, no me sale la calculadora en la pantalla y seguí todos los pasos

    • @pequenogranuja6265
      @pequenogranuja6265 11 месяцев назад

      has escrito nombre_pantalla.mainloop() es decir -> root.mainloop()

    • @pequenogranuja6265
      @pequenogranuja6265 11 месяцев назад

      si no te funciona eso pasame por aqui tu codigo

    • @Yasmin-dy3uk
      @Yasmin-dy3uk 3 месяца назад

      Hola amigo, para solucionarlo tienes que colocar el nombre de la variable que contiene la pantalla al final del codigo de esta forma: nombre.mainloop()

  • @m_duenas
    @m_duenas Год назад

    Como hago para que salga l calculadora en pantalla ? He seguido todos los procedimientos pero aun no veo la interfaz de la calculadora, ayuda por favor

    • @Mofumofu-rw5eb
      @Mofumofu-rw5eb Год назад +2

      al final del todo tiene que escribir root.mainloop()
      Es una función que sirve para que aparezca en la pantalla. Sin embargo, tiene que ir al final del todo porque sino solo va a aparecer los cambios que haya agregado antes del mainloop()

    • @AlbusSeverus-u5l
      @AlbusSeverus-u5l Год назад

      ​@@Mofumofu-rw5ebbro agregué el botón de multiplicación e hice lo que dijiste y ni así me aparece

    • @Mofumofu-rw5eb
      @Mofumofu-rw5eb Год назад

      @@AlbusSeverus-u5l Te diría que me mandes el código pero recuerda que tienes que agregar el botón al root principal o al frame en dado caso que tengas un frame.
      con
      boton = tk.Button("nombre Del Root o frame", "los demás argumentos)
      Obviamente todo esto tiene que estar detrás del root.mainloop
      Y segunda cosa que tienes que tomar en cuenta es que obviamente el nombre de la instancia del tk.Tk() tiene que ser el mismo nombre del mainloop
      Por ejemplo si le pones
      hola = tk.Tk()
      Debes escribir
      hola.mainloop()
      Sé que es obvio pero no quiero que se quede con las dudas.
      Si no le sirve mándeme el código para verlo
      Si puedes también me mandas el último error que te da, eso da mucha información

    • @andresagudeloagudelo2838
      @andresagudeloagudelo2838 Год назад

      @@Mofumofu-rw5eb bro yo también tengo el mismo problema,
      pero no me aparece ningún error, se ejecuta el código en la terminal pero no aparece la ventana

    • @Mofumofu-rw5eb
      @Mofumofu-rw5eb Год назад

      @@andresagudeloagudelo2838 Haz algo, haz un archivo .py aparte. Y ejecutas solo los imports, creas el root y luego haces el mainloop. Si aparece, entonces le vas agregando cosas poco a poco hasta que veas dónde empezó el error

  • @arcadekingdom2.0
    @arcadekingdom2.0 Год назад

    me salto ese error agregandole el estilo a los botones PylintC0301:line-too-long

  • @elioagustinvillafane6037
    @elioagustinvillafane6037 10 месяцев назад

    por que no me sale la calculadora en pantalla, tengo el codigo tal cual el tuyo

    • @Nigaman578
      @Nigaman578 7 месяцев назад

      Trata de instalar tkinter o mira tu versión de Python (a mi me daba error por la versión 😢)

  • @AlbusSeverus-u5l
    @AlbusSeverus-u5l Год назад

    No se me agrega el boton de multiplicacion, ayuda por favor

  • @caobensee
    @caobensee Год назад +1

    a mi no me está funcionando, me salta error en el minuto 28:13

    • @pequenogranuja6265
      @pequenogranuja6265 11 месяцев назад +1

      puede ser que en los estilos del label en uno de ellos hayas puesto todo entre '' o " ", o que hayas puesto la e en mayusculas, pasame por aqui el codigo y te lo corrijo bro

    • @Franco.R.F
      @Franco.R.F 7 месяцев назад

      Ya x2

  • @jesusalbertofloresgomez7548
    @jesusalbertofloresgomez7548 6 месяцев назад

    Porfa encerio díganme cómo descargo esas libreríasn

    • @erickramzhn
      @erickramzhn 4 месяца назад +3

      Desde que instalas Python se instala el Tkinter, no tienes que descargar nada

    • @Yasmin-dy3uk
      @Yasmin-dy3uk 3 месяца назад

      Tkinter viene con python, para otras librerías sería: pip install nombre de librería ejemplo: pip install pygame

  • @JhoanalfonsoAlvarezayala
    @JhoanalfonsoAlvarezayala 4 месяца назад

    Por favor, seria tan amable de compartir el código se los agradezco

    • @Yasmin-dy3uk
      @Yasmin-dy3uk 3 месяца назад +1

      Hola bro, si realmente quieres aprender no hagas eso, yo aprendo las funciones en el video y uso la lógica para hacer el programa con Mi propio código. De cualquier forma en internet hay foros donde puedes encontrar código similar.

    • @LicitaBien
      @LicitaBien 2 месяца назад

      @@Yasmin-dy3uk import tkinter as tk
      def agregar(digito):
      entrada.insert(tk.END, digito)
      def limpiar():
      entrada.delete(0, tk.END)
      def calcular():
      try:
      resultado = eval(entrada.get())
      entrada.delete(0, tk.END)
      entrada.insert(tk.END, str(resultado))
      except Exception as e:
      entrada.delete(0, tk.END)
      entrada.insert(tk.END, "Error")
      ventana = tk.Tk()
      ventana.title("Calculadora")
      entrada = tk.Entry(ventana, width=40, borderwidth=5, font=('Arial', 14))
      entrada.grid(row=0, column=0, columnspan=4)
      botones = [
      ('7', 1, 0), ('8', 1, 1), ('9', 1, 2), ('/', 1, 3),
      ('4', 2, 0), ('5', 2, 1), ('6', 2, 2), ('*', 2, 3),
      ('1', 3, 0), ('2', 3, 1), ('3', 3, 2), ('-', 3, 3),
      ('0', 4, 0), ('C', 4, 1), ('=', 4, 2), ('+', 4, 3)
      ]
      for texto, fila, columna in botones:
      if texto == '=':
      tk.Button(ventana, text=texto, width=10, height=3, font=('Arial', 14), command=calcular).grid(row=fila, column=columna)
      elif texto == 'C':
      tk.Button(ventana, text=texto, width=10, height=3, font=('Arial', 14), command=limpiar).grid(row=fila, column=columna)
      else:
      tk.Button(ventana, text=texto, width=10, height=3, font=('Arial', 14), command=lambda t=texto: agregar(t)).grid(row=fila, column=columna)
      ventana.mainloop()