{"id":737,"date":"2024-04-14T11:06:35","date_gmt":"2024-04-14T11:06:35","guid":{"rendered":"https:\/\/javigomez.org\/?p=737"},"modified":"2025-09-29T20:33:15","modified_gmt":"2025-09-29T20:33:15","slug":"06-04-python-clases-encapsulacion","status":"publish","type":"post","link":"https:\/\/javigomez.org\/index.php\/2024\/04\/14\/06-04-python-clases-encapsulacion\/","title":{"rendered":"06.04 Python \u2013 Clases -Encapsulaci\u00f3n"},"content":{"rendered":"\n<p>Hasta ahora hemos trabajo con atributos o propiedades p\u00fablicas, de manera que desde cualquier entorno se puede modificar este atributo. Para indicar que el atributo es privado se pone un guion bajo delante del nombre del atributo. Esto <strong>no es exclusivo<\/strong>, ya que no evita la modificaci\u00f3n, pero al ver el guion bajo, se avisa al programador que se debe utilizar como privado.<\/p>\n\n\n\n<p>Si se quiere evitar modificar el atributo, lo debemos <strong>definir con doble guion bajo<\/strong>. De esta manera, las asignaciones no funcionar\u00e1n, aunque tampoco da error<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>class Persona:\n    def __init__(self, nombre, apellido, edad):\n        self._nombre = nombre\n        self.apellido = apellido\n        self.edad = edad\n\n    def mostrar_detalle(self):\n        print(f'Persona: {self._nombre} {self.apellido} {self.edad}')\n\np1 = Persona('Carlos', 'Gil', 28)\np1._nombre='Lara'\np1.mostrar_detalle() #Lara Gil 28\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>class Persona:\n    def __init__(self, nombre, apellido, edad):\n        self.__nombre = nombre\n        self.apellido = apellido\n        self.edad = edad\n\n    def mostrar_detalle(self):\n        print(f'Persona: {self.__nombre} {self.apellido} {self.edad}')\n\np1 = Persona('Carlos', 'Gil', 28)\np1.__nombre='Lara'\np1.mostrar_detalle() #Carlos Gil 28\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 04 Clases encapsulacion\" width=\"1200\" height=\"900\" src=\"https:\/\/www.youtube.com\/embed\/mlTvXmho6JQ?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>Hasta ahora hemos trabajo con atributos o propiedades p\u00fablicas, de manera que desde cualquier entorno se puede modificar este atributo. Para indicar que el atributo &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,130,268,273,276],"class_list":["post-737","post","type-post","status-publish","format-standard","hentry","category-python","tag-clases","tag-encapsulacion","tag-privado","tag-publico","tag-pyhon"],"_links":{"self":[{"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/posts\/737","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=737"}],"version-history":[{"count":1,"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/posts\/737\/revisions"}],"predecessor-version":[{"id":859,"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/posts\/737\/revisions\/859"}],"wp:attachment":[{"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/media?parent=737"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/categories?post=737"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/tags?post=737"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}