🟡¿Qué es la Programación Orientada a Objetos en PYTHON? - [ Con EJEMPLOS ] | Python desde CERO #13

  Рет қаралды 17,151

Dimas

Dimas

Күн бұрын

Пікірлер: 86
@JMatiasTula
@JMatiasTula 2 ай бұрын
Tremenda explicación, lo explicas tan bien haces que sea mas fácil... Gracias
@AST_KEVIN-AC
@AST_KEVIN-AC 2 жыл бұрын
Gracias he seguido el curso y estoy aprendiendo mucho de hecho es primera vez que veo algo de programación y he explorado varios canales y no sé pero tus explicaciones si me ayudan a aprender en comparación de otros canales que loq UE hacían es confundirme. En mi caso tengo 15 años y esto de la Programación orientada a Objetos se me ha hecho muy fácil no he tenido problemas y he comprendido al 100%. Te felicito y gracias por este contenido espero poder terminar el curso y aprender mucho Les mando saludos a todos los que sigan este curso y espero que aprendamos mucho. Saludos desde El Salvador
@facuu1999
@facuu1999 2 жыл бұрын
Dimas sos un genio, me gustaria darte un abrazo de bros para agradecerte por este curso. saludos desde Argentina!
@Dimasmas
@Dimasmas 2 жыл бұрын
Jajajaja gracias Facu! Te mando un saludo de bro 😎
@jorgemariovargas3830
@jorgemariovargas3830 Жыл бұрын
Dimas, Gracias !! eres un campeón, Excelente la explicación de la POO. Saludos desde Medellín (Antioquia) Colombia. La ciudad de la eterna primavera.
@noxiousowl7320
@noxiousowl7320 2 жыл бұрын
poco a poco avanzando en el curso y cada vez me apasiona más programar, eres un grande dimas
@Dimasmas
@Dimasmas 2 жыл бұрын
Eso quería escuchar yo! Sigue dandole caña y ya verás como cada vez te gusta más
@patronista
@patronista Жыл бұрын
Dimas eres un grande, la mejor explicación de programación orientada a objetos.Gracias
@yasser54799
@yasser54799 Ай бұрын
genial bro ,ahora todo tiene sentido gracia por tu labor
@10beecom73
@10beecom73 2 жыл бұрын
Excelente explicación, te agradezco mucho Dimas.
@Dimasmas
@Dimasmas 2 жыл бұрын
De nada! Me alegra que te haya gustado ☺️
@carlosredondo1673
@carlosredondo1673 Жыл бұрын
Lo voy entendiendo....poco a poco. me ha gustado, suscribo. muchiíiisimas gracias.
@Dimasmas
@Dimasmas Жыл бұрын
Bienvenido! Me alegra que se entienda
@KanguroJack___
@KanguroJack___ 2 жыл бұрын
Qué crack, Dimas. Vi otros videos donde directamente te mandan a la sintaxis y que las cosas se escriben porque sí; pero aquí explicas bien construyendo una clase poco a poco y se entiende el porqué de las cosas. Puedo decir que ya entendí bien al menos esta parte de la POO en Python. La cosa es no olvidarme XD
@Dimasmas
@Dimasmas 2 жыл бұрын
Ole olee me alegro!! Si lo vas practicando eso ya no se olvida
@pablomontoyath
@pablomontoyath 2 жыл бұрын
Excelente video, explicas de una forma muy clara y amena, gracias por compartir tus conocimientos.
@Dimasmas
@Dimasmas Жыл бұрын
Gracias a ti por ver el vídeo y por tu comentario
@walterwateco234
@walterwateco234 Жыл бұрын
Clarísimo, felicitaciones y Gracias de corazón
@Dimasmas
@Dimasmas Жыл бұрын
Gracias a ti por verlo!
@elierbenitez4621
@elierbenitez4621 Жыл бұрын
Cojones al fin alguien, que explica la POO para los que lo entiendan los humanos normales
@leandrorivera5044
@leandrorivera5044 Жыл бұрын
Excelente contenido muy claro 👌
@Borra2
@Borra2 Жыл бұрын
Muy bien explicado. Me parece muy claro de momento lo que voy viendo en tus videos.
@Dimasmas
@Dimasmas Жыл бұрын
Me alegra que todo este claro!
@I_Grey_I
@I_Grey_I 3 жыл бұрын
Jajajaj buen video Dimas, me divierto mucho con tus clases
@victormanuelrodriguez2341
@victormanuelrodriguez2341 3 жыл бұрын
Gracias!, enorme explicacion! PERO ENORME!
@Dimasmas
@Dimasmas 3 жыл бұрын
Genial! Me alegra mucho que te haya gustado la explicación.
@leoplay3866
@leoplay3866 2 жыл бұрын
grande, todo bien explicado ... Good class :)
@Dimasmas
@Dimasmas 2 жыл бұрын
Me alegro de que se entienda!!
@yonattandiazrodriguez6948
@yonattandiazrodriguez6948 8 ай бұрын
un poco complicado pero creo que la idea es practicar practicar y practicar !!!
@pawitadl
@pawitadl 2 жыл бұрын
yo matandome con las clases durante dias... por fin lo logre entender!!!! mil gracias ...:D
@Dimasmas
@Dimasmas 2 жыл бұрын
Ole olee oleee! Suele ser un tema complejo de entender
@aristidesminota3709
@aristidesminota3709 3 жыл бұрын
Muchas gracias, necesitaba un video que me aclarará o explicará la teoría de la POO. Estoy aprendiendo Dart en otro canal de KZbin, pero necesitaba una mejor explicación teórica. Muchas gracias.
@Dimasmas
@Dimasmas 3 жыл бұрын
Me alegra que te haya sido de ayuda ✌️. Al principio la POO puede ser un poco confusa, pero poco a poco va cobrando sentido. Ánimo!
@punKtino
@punKtino Жыл бұрын
Hola ! Muchisimas gracias por el video. Me estaba volviendo loco con la POO, no entendia nada, muchas gracias por esta explicacion ! Hay algun sitio donde pueda descargar la presentacion que muestras al inicio del video ? Muchas gracias
@javierH
@javierH 2 жыл бұрын
ok, excelente video, ya resueltos los ejercicios. Saludos.
@Dimasmas
@Dimasmas 2 жыл бұрын
Ooh ya veo la insignia de miembro!! Muchísimas gracias . Cualquier duda me comentas 💪
@DjWhitefoxMadrid
@DjWhitefoxMadrid 3 жыл бұрын
Muy buen video, todo muy claro y los ejemplos muy ilustrativos!
@Dimasmas
@Dimasmas 3 жыл бұрын
Buenas Dj! Muchísimas gracias, me alegra que te haya gustado!!
@megamanxx585
@megamanxx585 2 жыл бұрын
Eres un capo we, por un tiempo no seguí estudiando por que el profe anterior no explicó bien este tema pero contigo creo que lo estoy comprendiendo, durante estos días seguiré el curso a partir de aquí! un saludo cordial y sincero agradecimiento desde México!
@Dimasmas
@Dimasmas 2 жыл бұрын
Muchas gracias Megaman. La programación orientada a objetos al principio se hace un poco complicada, pero poco a poco todo va cobrando sentido
@gabrielavila-bv8dk
@gabrielavila-bv8dk 9 ай бұрын
Excelente de verdad eres el mejor que explica como debe ser... Dimas gracias.... Mira una consulta, algun enlace para seguirte por si a futuros necesito de tu ayuda laboral? Saludos
@Dimasmas
@Dimasmas 9 ай бұрын
Si quieres por linkedin: www.linkedin.com/in/dimas-avila/ no tengo redes sociales activas
@sebastianl.r.3150
@sebastianl.r.3150 11 ай бұрын
buena explicación.
@doctorpoma
@doctorpoma 2 жыл бұрын
Excelente. Buena....Gracias.
@Dimasmas
@Dimasmas Жыл бұрын
Gracias a ti por verlo
@stickmanx9918
@stickmanx9918 2 жыл бұрын
*Buena explicacion bro, sigue subiendo videos de Python*
@Dimasmas
@Dimasmas 2 жыл бұрын
Mucjas gracias Stickman, pronto seguitemos!
@apuestastc8948
@apuestastc8948 2 жыл бұрын
Excelente profe muy bien video 👋
@Dimasmas
@Dimasmas 2 жыл бұрын
Muchas gracias!
@JuanFelix-
@JuanFelix- 2 жыл бұрын
Gracias , excelente explicación crack
@Dimasmas
@Dimasmas 2 жыл бұрын
Muchas gracias, me alegra que te haya gustado!!
@naxbloc516
@naxbloc516 3 жыл бұрын
Sigue subiendo python bro , me gustan estos vídeos
@Dimasmas
@Dimasmas 3 жыл бұрын
Muchas gracias! Esta semana subiré el siguiente ✌️
@miguelromero2363
@miguelromero2363 Жыл бұрын
Muy bueno!!
@joacosamyn2911
@joacosamyn2911 2 жыл бұрын
buenas Dimas, sigo molestando, me surgió una duda respecto al init, yo manejo más o menos c++ y nosotros a eso del init lo llamamos constructor, pero en c++ teniamos la posibilidad de INICIALIZARLO con un valor ya prefijado en caso de que no pasaran datos, o sea, suponte que el que crea el objeto camiseta, escribe, solo >>camiseta = Camiseta ("Nike")
@Dimasmas
@Dimasmas 2 жыл бұрын
Si también se pueden inicializar atributos por defecto. Entonces, si al crear un objeto se define un atributo, tomará ese valor. Si se omite, tomará el valor por defecto. También se pueden usar argumentos opcionales (igual que el vídeo de *args y **kwargs). Te dejo un ejemplo de ambas situaciones: class Camiseta: def __init__(self, marca, precio=10): self.marca = marca self.precio = precio class Persona: def __init__(self, **kwargs): if "nombre" in kwargs.keys(): self.nombre = kwargs["nombre"] if "edad" in kwargs.keys(): self.edad = kwargs["edad"] if "trabajo" in kwargs.keys(): self.trabajo = kwargs["trabajo"] c = Camiseta("adidas") print(c.precio) c2 = Camiseta("nike", 25) print(c2.precio) p = Persona(nombre="Dimas", edad=23) p2 = Persona(trabajo="carpintero")
@MRL290975
@MRL290975 3 жыл бұрын
Hola @Dimas y como haces para pasar argumentos de funciones dentro de métodos, para mandarlas llamar desde otras clases?
@Dimasmas
@Dimasmas 3 жыл бұрын
Buenas Marcela, me alegra verte por aquí de nuevo! Para llamar un método de un objeto desde otra clase, con varios parámetros, hay que seguir estos pasos: 1. Crear ambas clases, por ejemplo A y B 2. En la clase B, definir un atributo que sea una instancia de la clase A. 3. En un método de la clase B, llamar al método de la clase A utilizando el objeto creado. Te pongo un ejemplo: class A: def __init__(self, arg1, arg2): self.arg1 = arg1 self.arg2 = arg2 def metodoA(self, param1, param2): print(f"Estos son mis parametros {param1}, {param2}") class B: def __init__(self, arg3, arg4): self.arg3 = arg3 self.arg4 = arg4 self.objetoA = A("argumento 1", "argumento 2") def metodoB(self): self.objetoA.metodoA(self.arg3, self.arg4) b = B("Hola", "¿Que tal?") b.metodoB() La clase B, crea un objeto de la clase A en su método init. Luego des de metodoB, llama a metodoA usando el objeto A creado en el método init. Los argumentos de cada método los puedes definir como quieras, funcionan igual que los argumentos de funciones que hemos visto en el curso. No sé si esta era exactamente tu duda, espero haberte ayudado. Cualquier cosa estamos en contacto, un saludo!
@MRL290975
@MRL290975 3 жыл бұрын
​ @Dimas pues te he sido infiel 😞.... mirando otros videos que me han llenado de información, pero que no explican tan bien como tu, la verdad!! Ya vi y analicé todos tus videos, de OOP, Herencia, Encapsulamiento, Polimorfismo, etc, que hay que reconocer que eres muy bueno y me encanta mirarte, porque aparte te tomas todo con humor y eso está super!! Y si, ya se, empecé al revés, empecé viendo tus videos de Interfaces gráficas y después todos los demás videos de OOP 😒 jajajaja 🤣 pero bueno, eso no me ha servido para encontrar la solución al tema que traigo, y es que quiero recuperar del código de abajo la variable tc_xml que obtengo de la función separate_tc que está en la clase StartPage y pintarla en la clase PageOne, con ayuda de la variable self.shared_data = {'tc': []} declarada en la clase AppMain, pero me la pinta vacía: import os, easygui import xml.etree.ElementTree as ET import tkinter as tk LARGE_FONT = ("Verdana", 12) xml_name = '' tc_xml = [] class PageOne(tk.Frame): def __init__(self, parent, controller): tk.Frame.__init__(self, parent) self.controller = controller label = tk.Label(self, text='Select the TestCase you want to plot:', font=LARGE_FONT) label.place(relx=.01, rely=.01) print("Second TC:", self.controller.shared_data['tc']) # for i in self.controller.shared_data['tc']: # print("****: ", i) # print("Name:", i['Name'], "Id:", i['Id']) # def home(): controller.show_frame("StartPage") button_back = tk.Button(self, text='Back to Home', command=home, relief='raised') button_back.place(relx=.01, rely=.05) class StartPage(tk.Frame): def __init__(self, parent, controller): tk.Frame.__init__(self, parent) self.controller = controller label = tk.Label(self, text='File Upload: Press the button to open the XML file.', font=LARGE_FONT) label.place(relx=.01, rely=.01) # Function to separate the tc "Child_4" inside the xml file def separate_tc(xml_name): global tc_xml file_xml = ET.parse(xml_name) tc_xml = [ {"Name": signal.attrib["Name"], "Id": signal.attrib["Id"], } for signal in file_xml.findall(".//Child_4") ] self.controller.shared_data['tc'] = tc_xml print('First TC:', tc_xml) controller.show_frame("PageOne") # Function to open xml file def open_file(): global xml_name try: xml_name = str(easygui.fileopenbox(title='Select XML file', default='*.xml')) if str(os.path.abspath(xml_name)) != os.path.join(os.path.abspath(os.getcwd()), os.path.basename(xml_name)): separate_tc(os.path.basename(str(xml_name))) else: separate_tc(os.path.basename(str(xml_name))) except FileNotFoundError: print('XML file was not loaded.') button_open = tk.Button(self, text="Open File XML", command=open_file) # File test xml: github.com/MarshRangel/Python/blob/develop/TestCase.xml button_open.place(relx=.01, rely=.05) class AppMain(tk.Tk): def __init__(self, *args, **kwargs): tk.Tk.__init__(self, *args, **kwargs) tk.Tk.wm_title(self, 'Analysis of a XML') self.shared_data = {'tc': []} container = tk.Frame(self) container.pack(side='top', fill='both', expand=True) container.grid_rowconfigure(0, weight=1) container.grid_columnconfigure(0, weight=1) self.frames = {} for F in (StartPage, PageOne): page_name = F.__name__ frame = F(parent=container, controller=self) self.frames[page_name] = frame frame.grid(row=0, column=0, sticky="nsew") self.show_frame("StartPage") def show_frame(self, page_name): '''Show a frame for the given page name''' frame = self.frames[page_name] frame.tkraise() if __name__ == "__main__": app = AppMain(None) app.title('Analysis of XML') app.geometry("1024x920") app.mainloop() Espero me puedas ayudar a detectar donde está mi error, por favor🥺🙏!!!
@MRL290975
@MRL290975 3 жыл бұрын
por cierto, intenté implementarlo como el ejemplo que me compartes, pero me perdí porque la clase A y B no tiene funciones internas y solo dependen de __init__, pero muchas gracias por el ejemplo.
@Dimasmas
@Dimasmas 3 жыл бұрын
@@MRL290975 Buenas Maecela! Muchas gracias por tus palabras me animan mucho. En cuanto a tu duda, tienes un github (o similar) con el código? Si no es así, crees que podrías crearlo y compartirmelo? De esta forma será más cómodo trabajar que desde los comentarios de KZbin. Le echaré un ojo durante el fin de semana, que tendré un poco más de tiempo, espero poder ayudarte!
@MRL290975
@MRL290975 3 жыл бұрын
De hecho, hay otro script llamado test14.py que fue el primero que hice cuando empecé a ver lo de las clases y esta busqueda infinita que no termina... jejejeje, pero bueno el chiste es que no navega y trae errores, pero más o menos es lo que debe de traer en las ventanas, pero con botones de atras y recargar los botones de tc, si cargas otro archivo. En fin, sigo con mi busqueda... al infinito y más allá!
@paurodriguezinserte7964
@paurodriguezinserte7964 3 жыл бұрын
Buen vídeo 👍
@Dimasmas
@Dimasmas 3 жыл бұрын
Muchas gracias Pau, me alegro de que te haya gustado 👍
@fr4nk355
@fr4nk355 3 жыл бұрын
Buen video Dimas
@Dimasmas
@Dimasmas 3 жыл бұрын
Muchas gracias Fr4nk! Veo que ya has llegado a la POO. A partir de aquí se pone más interesante!
@sepenamo9312
@sepenamo9312 Жыл бұрын
gracias
@origen140
@origen140 Жыл бұрын
Deseas saber cual fue el origen de los objetos en lenguajes de programacion? kzbin.info/www/bejne/n6q5eqadeqp7nZI
@nbati8388
@nbati8388 3 ай бұрын
te amo
@4josue9legal
@4josue9legal 3 жыл бұрын
Que grande eres
@Dimasmas
@Dimasmas 3 жыл бұрын
Que grande eres tu también Josue!
@lucaspaladini2242
@lucaspaladini2242 3 ай бұрын
Sos una locura
@rodrickpro73
@rodrickpro73 Жыл бұрын
24:39
@JesusRamirez-ie9hz
@JesusRamirez-ie9hz 2 жыл бұрын
Encontré este canal buscando cosas sobre Tkinter y me salió un loco haciendo ASMR, lo quité, dejé de ver el vídeo porque me sentí ofendido con eso, unas 6 u 8 horas después volví al mismo video porque seguía investigando sobre Tkinter, pero esta vez le di una oportunidad, ahora mismo son las 2 de la madrugada y ya me vi todo el video de Tkinter, el de los *args y **kwargs y acá estoy ahora viendo POO.
@JesusRamirez-ie9hz
@JesusRamirez-ie9hz 2 жыл бұрын
Casi me pierdo de un canal muy bueno por esa mierda de ASMR
@Dimasmas
@Dimasmas 2 жыл бұрын
JAJAJAJAJAJAJAJA me encanta. Gracias por darme una segunda oportunidad, y bienvenido al canal. Para tu tranquilidad, creo que solo empiezo con 'ASMR' en un par de vídeos, los demás so normales.
@Dimasmas
@Dimasmas 2 жыл бұрын
Definitivamente el asmr no fue la mejor táctica para ganar audiencia.
@JesusRamirez-ie9hz
@JesusRamirez-ie9hz 2 жыл бұрын
@@Dimasmas jajaja definitivamente... no.
@luisa.persson3591
@luisa.persson3591 8 ай бұрын
...👍...
@davidalpu9881
@davidalpu9881 2 жыл бұрын
T’expliques de conya.
@Dimasmas
@Dimasmas 2 жыл бұрын
Moltes gràcies màquina 🤙🏻
@marielayaelalarcon5500
@marielayaelalarcon5500 Жыл бұрын
class Camiseta : def _init_(self, marca, precio, talla, color): self.marca = marca self.precio = precio self.talla = talla self.color = color camiseta = Camiseta("Nike", 19.99, "s", "lila") camisetaAdida = Camiseta("Adidas", 30, "m", "rojo") print(camiseta.precio) print(camisetaAdida.marca) no encuentro el error. me dice que en linea 9 camiseta no tiene argumento
@AST_KEVIN-AC
@AST_KEVIN-AC 2 жыл бұрын
Gracias he seguido el curso y estoy aprendiendo mucho de hecho es primera vez que veo algo de programación y he explorado varios canales y no sé pero tus explicaciones si me ayudan a aprender en comparación de otros canales que loq UE hacían es confundirme. En mi caso tengo 15 años y esto de la Programación orientada a Objetos se me ha hecho muy fácil no he tenido problemas y he comprendido al 100%. Te felicito y gracias por este contenido espero poder terminar el curso y aprender mucho Les mando saludos a todos los que sigan este curso y espero que aprendamos mucho. Saludos desde El Salvador
Quando eu quero Sushi (sem desperdiçar) 🍣
00:26
Los Wagners
Рет қаралды 15 МЛН
Мясо вегана? 🧐 @Whatthefshow
01:01
История одного вокалиста
Рет қаралды 7 МЛН
COMO USAR LA PROGRAMACION ORIENTADA A OBJETOS - DESDE CERO
34:45
Curso de Javascript Orientado a Objetos para Principiantes
2:25:06
Quando eu quero Sushi (sem desperdiçar) 🍣
00:26
Los Wagners
Рет қаралды 15 МЛН