Message145946
| Author |
eric.araujo |
| Recipients |
eric.araujo |
| Date |
2011年10月19日.19:45:31 |
| SpamBayes Score |
2.492566e-08 |
| Marked as misclassified |
No |
| Message-id |
<1319053532.35.0.636674659737.issue13224@psf.upfronthosting.co.za> |
| In-reply-to |
| Content |
Suggestion by Guido on #868845:
> I sometimes wish that the str() of a class would return the class name
> rather than its repr(); that way "print(str)" would print "str"
> instead of <class 'str'>. (Use case: printing an exception and its
> message: I wish I could print("%s: %s" % (err.__class__, err)) instead
> of having to use err.__class__.__name__.)
I wrote a simple patch for that. I just copied the definition of type_repr to a new type_str function, edited the format strings and updated the member mapping (I checked in another file than casting to reprfunc is okay for a str func). It compiles and runs just fine, but I’m still learning C, so there may be things I’ve missed: I don’t know if I have to declare the new function or something like that. The test suite passes with very few edits.
Guido added this:
> One could even claim that the repr() of a class could be the same
I for one think of repr first as "string form for debugging", so I like the angle brackets. My patch leaves __repr__ alone.
If this get approved, I’ll update my patch with doc changes. If there is no feedback I’ll go to python-ideas. |
|
History
|
|---|
| Date |
User |
Action |
Args |
| 2011年10月19日 19:45:32 | eric.araujo | set | recipients:
+ eric.araujo |
| 2011年10月19日 19:45:32 | eric.araujo | set | messageid: <1319053532.35.0.636674659737.issue13224@psf.upfronthosting.co.za> |
| 2011年10月19日 19:45:31 | eric.araujo | link | issue13224 messages |
| 2011年10月19日 19:45:31 | eric.araujo | create |
|