<div dir="ltr">I am firmly -1 on any changes here. It would have been a nice idea when we first introduced exceptions. Fixing this now isn't going to make much of a difference, and the internal structure of exceptions is murky enough that comparing 'args' alone doesn't cut it.<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Feb 25, 2015 at 5:32 AM, Steven D'Aprano <span dir="ltr"><<a href="mailto:steve@pearwood.info" target="_blank">steve@pearwood.info</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On Wed, Feb 25, 2015 at 03:03:40PM +0200, Ionel Cristian Mărieș wrote:<br>
> Yes, it does, however my assertion looks similar to this:<br>
><br>
>     assert result == [1,2, (3, 4, {"bubu": OSError('foobar')})]<br>
<br>
</span>I'm not keen on using assert like that. I think that using assert for<br>
testing is close to abuse of the statement, and it makes it impossible<br>
to test your code running with -O.<br>
<br>
But regardless of whether that specific test is good practice or not, I<br>
think it is reasonable for exception instances to have a more useful<br>
__eq__ than that provided by inheriting from object. Perhaps add<br>
something like this to BaseException:<br>
<br>
    def __eq__(self, other):<br>
        if isinstance(other, type(self)):<br>
            return self.args == other.args<br>
        return NotImplemented<br>
<span class="HOEnZb"><font color="#888888"><br>
<br>
<br>
<br>
--<br>
Steve<br>
</font></span><div class="HOEnZb"><div class="h5">_______________________________________________<br>
Python-ideas mailing list<br>
<a href="mailto:Python-ideas@python.org">Python-ideas@python.org</a><br>
<a href="https://mail.python.org/mailman/listinfo/python-ideas" target="_blank">https://mail.python.org/mailman/listinfo/python-ideas</a><br>
Code of Conduct: <a href="http://python.org/psf/codeofconduct/" target="_blank">http://python.org/psf/codeofconduct/</a></div></div></blockquote></div><br><br clear="all"><br>-- <br><div class="gmail_signature">--Guido van Rossum (<a href="http://python.org/~guido">python.org/~guido</a>)</div>
</div>