[Python-Dev] transform() and untransform() methods, and the codec registry (original) (raw)
Victor Stinner victor.stinner at haypocalc.com
Fri Dec 3 17:44:17 CET 2010
- Previous message: [Python-Dev] "buffer interface" messages
- Next message: [Python-Dev] transform() and untransform() methods, and the codec registry
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On Friday 03 December 2010 16:11:29 R. David Murray wrote:
> >>> 'abc'.transform('hex') > TypeError: 'str' does not support the buffer interface > > >>> b'abc'.transform('rot13') > TypeError: expected an object with the buffer interface
I find these 'buffer interface' error messages to be the most confusing error message I get out of Python3 no matter what context they show up in. I have no idea what they are telling me. That issue is more general than transform/untransform, but perhaps it could be fixed for transform/untransform in particular.
If it's more general, let's open an issue for that: http://bugs.python.org/issue10616
> >>> b'abcd'.decode('hex') > TypeError: decoder did not return a str object (type=bytes) > > >>> 'abc'.encode('rot13') > TypeError: encoder did not return a bytes object (type=str)
These error messages make perfect sense to me. I think it is called "duck typing" :) (...) Please also recall that transform/untransform was discussed before the release of Python 3.0 and was approved at the time, but it just did not get implemented before the 3.0 release.
Ok.
Victor
- Previous message: [Python-Dev] "buffer interface" messages
- Next message: [Python-Dev] transform() and untransform() methods, and the codec registry
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]