[Python-Dev] cpython: Document PyUnicode_Copy() and PyUnicode_EncodeCodePage() (original) (raw)

"Martin v. Löwis" martin at v.loewis.de
Sun Dec 11 23:44:50 CET 2011


Am 09.12.2011 20:32, schrieb Antoine Pitrou:

On Fri, 09 Dec 2011 19:51:14 +0100 Victor Stinner <victor.stinner at haypocalc.com> wrote:

On 09/12/2011 01:35, Antoine Pitrou wrote:

On Fri, 09 Dec 2011 00:16:02 +0100 victor.stinner<python-checkins at python.org> wrote:

+.. c:function:: PyObject* PyUnicodeCopy(PyObject *unicode) + + Get a new copy of a Unicode object. + + .. versionadded:: 3.3 I'm not sure I understand. Why would you make a copy of an immutable object? PyUnicodeCopy() can be used to modify a string to create a new string with the same length. It is used for example by str.upper(), str.title(), ... (fixup()). Then the doc should mention that the returned string can be modified. Otherwise it's a bit obscure why the function exists.

I'm skeptical about this modification part. If you make a copy, it's not clear at all that the new characters that you put in will fit in range with the width of the unicode string. Even decreasing the ordinal of a character may be incorrect as the result may not be canonical anymore.

Regards, Martin



More information about the Python-Dev mailing list