Ok, gracias a ambos.<br><br>Sigo luchando con la red, la verdad es que no he logrado mucho y entiendo poco.<br><br><br><br><div class="gmail_quote">El 8 de febrero de 2010 14:21, Michael Cetrulo <span dir="ltr"><<a href="mailto:mail2samus@gmail.com">mail2samus@gmail.com</a>></span> escribió:<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">buenas,<div class="im"><br><br><div style="margin-left: 40px;"><span style="font-family: courier new,monospace;">super(TextSync, self).__init__(tube, PATH)</span><br>
</div><br></div>equivale a:<br><br><div style="margin-left: 40px;"><span style="font-family: courier new,monospace;">ExportedGObject.__init__(self, tube, PATH)</span><br>
</div><br>no se olviden del self.<br><br>lo que hace es como decia Gabriel llamar al metodo <span style="font-family: courier new,monospace;">__init__</span> de la clase padre, se prefiere <span style="font-family: courier new,monospace;">super</span> ya que nos evita cambiar todas las referencias si cambiamos la clase desde la cual hereda aunque con herencia multiple esto se vuelve un poco mas complicado.<br>
<br>algo muy importante a tener en cuenta es que si bien estamos llamando a los metodos de la clase padre, <span style="font-family: courier new,monospace;">self</span> sigue siendo instancia de la clase hija (es una variable despues de todo), python tiene un sistema de herencia bastante pobre y se refleja en todas esas cosas.<br>
<br><div class="gmail_quote">2010/2/7 Gabriel Eirea <span dir="ltr"><<a href="mailto:geirea@gmail.com" target="_blank">geirea@gmail.com</a>></span><div><div></div><div class="h5"><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div>> Así que la linea:<br>
><br>
> super(TextSync, self).__init__(tube, PATH)<br>
><br>
> es lo mismo que:<br>
><br>
> ExportedGObject.__init__(tube, PATH)<br>
><br>
> ??<br>
<br>
</div>Capaz que la sintaxis está mal, pero la idea es que la clase padre de<br>
TextSync es ExportedGObject, entonces al inicializar TextSync lo<br>
primero que debe hacerse es inicializar a su clase padre, que se<br>
obtiene con super(TextSync,self).<br>
<br>
Es una de esas cosas que hay que hacer siempre y chau.<br>
<br>
Mirá por ejemplo acá (Example 5.6):<br>
<br>
<a href="http://diveintopython.org/object_oriented_framework/defining_classes.html" target="_blank">http://diveintopython.org/object_oriented_framework/defining_classes.html</a><br>
<div><div></div><div>_______________________________________________<br>
Olpc-uruguay mailing list<br>
<a href="mailto:Olpc-uruguay@lists.laptop.org" target="_blank">Olpc-uruguay@lists.laptop.org</a><br>
<a href="http://lists.laptop.org/listinfo/olpc-uruguay" target="_blank">http://lists.laptop.org/listinfo/olpc-uruguay</a><br>
</div></div></blockquote></div></div></div><br>
<br>_______________________________________________<br>
Olpc-uruguay mailing list<br>
<a href="mailto:Olpc-uruguay@lists.laptop.org">Olpc-uruguay@lists.laptop.org</a><br>
<a href="http://lists.laptop.org/listinfo/olpc-uruguay" target="_blank">http://lists.laptop.org/listinfo/olpc-uruguay</a><br>
<br></blockquote></div><br>