On 2023-02-25 09:10:06 -0500, Thomas Passin wrote: > On 2/25/2023 1:13 AM, Peter J. Holzer wrote: > > On 2023-02-24 18:19:52 -0500, Thomas Passin wrote: > > > Sometimes you can use a second parameter to assert if you know what kind > > > of > > > error to expect: [...] > > > With type errors, assert may actually give you the information needed: > > > > > > > > > c = {"a": a, "b": 2} > > > > > > assert a > c > > > Traceback (most recent call last): > > > File "<stdin>", line 1, in <module> > > > TypeError: '>' not supported between instances of 'list' and 'dict' > > > > Actually in this case it isn't assert which gives you the information, > > it's evaluating the expression itself. You get the same error with just > > a > c > > on a line by its own. > > In some cases. For my example with an explanatory string, you wouldn't want > to write code like that after an ordinary line of code, at least not very > often. The assert statement allows it syntactically.
Yes, but if an error in the expression triggers an exception (as in this case) the explanatory string will never be displayed. hp -- _ | Peter J. Holzer | Story must make more sense than reality. |_|_) | | | | | h...@hjp.at | -- Charles Stross, "Creative writing __/ | http://www.hjp.at/ | challenge!"
signature.asc
Description: PGP signature
-- https://mail.python.org/mailman/listinfo/python-list