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

Victor Stinner victor.stinner at haypocalc.com
Fri Dec 9 19:51:14 CET 2011


On 09/12/2011 01:35, Antoine Pitrou wrote:
> On 2011年12月09日 00:16:02 +0100
> victor.stinner<python-checkins at python.org> wrote:
>>>> +.. c:function:: PyObject* PyUnicode_Copy(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?

PyUnicode_Copy() 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()).
It is also used by str.__getnewargs__(). I am not sure that 
str.__getnewargs__() must be a copy of str (s.__getnewargs__() is not x).
As mentionned by Martin, PyUnicode_Copy() is also used to get "an exact" 
Unicode object when you have a subtype.
We can maybe make the function private.
Victor


More information about the Python-Dev mailing list

AltStyle によって変換されたページ (->オリジナル) /