Я пытаюсь отправить строку из c ++ в строку python, используя:
PyObject* pyString = PyUnicode_FromString("/abc/def.html/a%22.php?abc=&def=%22;%00s%01");
....
PyObject* pyArgs = Py_BuildValue("(z)", pyString);
...
PyObject_CallObject(pFunc, pyArgs);
Но в скрипте строка плохая:
function(data):
print(data)
Результат:
/abc/def.html/a bogus %pp?abc=&def= %;(null)%
Что случилось ?, Если я пытаюсь экранировать %
символов с %%
, то работает нормально, но PyUnicode_FromString
не является форматом printf.
Это ошибка функции PyUnicode_FromString
?, Мне нужен родной побег питона?Или мне нужно вручную убежать?