On 1/5/2014 8:14 AM, Mark Lawrence wrote:
http://lucumr.pocoo.org/2014/1/5/unicode-in-2-and-3/

I disagree with the following claims:

"Looking at that you can see that Python 3 removed something: support for non Unicode data text. "

I believe 2.7 str text methods like .upper only supported ascii. General non-unicode bytes text support would require an encoding as an attribute of the bytes text object. Python never had that.

"Python 3 essentially removed the byte-string type which in 2.x was called str."

Python 3 renamed unicode as str and str as bytes. Bytes have essentially all the text methods of 2.7 str. Compare dir(str) in 2.7 and dir(bytes) in 3.x. The main change of the class itself is that indexing and iteration yield ints i, 0 <= i < 256.

"all text operations now are only defined for Unicode strings."

?? Text methods are still defined on (ascii) bytes. It is true that one text operation -- string formatting no longer is (and there is an issue about that). But one is not all. There is also still discussion about within-class transforms, but they are still possible, even if not with the codecs module.

I suspect there are other basic errors, but I mostly quit reading at this point.

--
Terry Jan Reedy

--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to