{"id":759,"date":"2024-04-16T04:39:17","date_gmt":"2024-04-16T04:39:17","guid":{"rendered":"https:\/\/javigomez.org\/?p=759"},"modified":"2025-09-29T20:32:51","modified_gmt":"2025-09-29T20:32:51","slug":"06-13-python-clases-sobrecarga-y-polimorfismom","status":"publish","type":"post","link":"https:\/\/javigomez.org\/index.php\/2024\/04\/16\/06-13-python-clases-sobrecarga-y-polimorfismom\/","title":{"rendered":"06.13 Python \u2013 Clases \u2013 Sobrecarga y Polimorfismo"},"content":{"rendered":"\n<p>La sobrecarga de operadores, tambi\u00e9n conocida como &#8220;operator overloading&#8221; en ingl\u00e9s, es una caracter\u00edstica en Python que te permite definir el comportamiento de operadores integrados como +, -, *, \/, ==, !=, entre otros, para objetos de tus propias clases.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>class Persona:\n    def __init__(self,nombre,ventas):\n        self.nombre=nombre\n        self.ventas=ventas\n\n    def __add__(self, other):\n        res=Persona(\"TOTAL\",self.ventas+other.ventas)\n        return(res)\n\n    def __str__(self):\n        return f\"Nombre: {self.nombre} Ventas: {self.ventas}\"\n\na=Persona(\"Javi\",23)\nb=Persona(\"Maria\",55)\nc=a+b\nprint(a)\nprint(b)\nprint(c)\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>class Perro:\n    def sonido(self):\n        return \u201cGuau!\"\n\nclass Gato:\n    def sonido(self):\n        return \"Miau!\"\n\nclass Vaca:\n    def sonido(self):\n        return \"Muu!\"\n\n# Funci\u00f3n que utiliza el polimorfismo para acceder al m\u00e9todo \"sonido\" de diferentes objetos\ndef hacer_sonido(animal):\n    return animal.sonido()\n\n# Crear instancias de las clases\nperro = Perro()\ngato = Gato()\nvaca = Vaca()\n\n# Llamar a la funci\u00f3n que utiliza polimorfismo\nprint(hacer_sonido(perro))  # Resultado: \"Woof!\"\nprint(hacer_sonido(gato))   # Resultado: \"Miau!\"\nprint(hacer_sonido(vaca))   # Resultado: \"Muu!\"\n<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-4-3 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"PYTHON U06 13 Clases sobrecarga polimorfismo\" width=\"1200\" height=\"900\" src=\"https:\/\/www.youtube.com\/embed\/Tq-TS-a7aWU?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>La sobrecarga de operadores, tambi\u00e9n conocida como &#8220;operator overloading&#8221; en ingl\u00e9s, es una caracter\u00edstica en Python que te permite definir el comportamiento de operadores integrados &hellip; <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[9],"tags":[79,264,277,310],"class_list":["post-759","post","type-post","status-publish","format-standard","hentry","category-python","tag-clases","tag-polimorfismo","tag-python","tag-sobrecarga"],"_links":{"self":[{"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/posts\/759","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/comments?post=759"}],"version-history":[{"count":1,"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/posts\/759\/revisions"}],"predecessor-version":[{"id":850,"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/posts\/759\/revisions\/850"}],"wp:attachment":[{"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/media?parent=759"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/categories?post=759"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/tags?post=759"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}