我正在移植一个使用C将Python的功能从2.x扩展到3的模块,并且无法在文档中找到有关如何调整字符串大小的任何引用,只知道如何获取其大小:
http://docs.python.org/py3k/c-api/unicode.html?highlight=pyunicode#PyUnicode_GetSize
如何转换此代码:
_PyString_Resize(&buffer, (int)res);
到python 3可以理解的那个?
答案 0 :(得分:5)
虽然您链接的页面中没有记录,但unicodeobject.c确实包含两者
int _PyUnicode_Resize(PyUnicodeObject **unicode, Py_ssize_t length)
和包装器
int PyUnicode_Resize(PyObject **unicode, Py_ssize_t length)
{
return _PyUnicode_Resize((PyUnicodeObject **)unicode, length);
}
我不知道缺少文件是疏忽还是安静弃用(从未使用过任何这些)。