4
我需要從C++評估一個Python表達式。此代碼似乎工作:爲什麼PyRun_String不評估bool文字?
PyObject * dict = PyDict_New();
PyObject * val = PyRun_String(expression, Py_eval_input, dict, 0);
Py_DECREF(dict);
不幸的是,它失敗可怕,如果表達的是 「假」, 「真」(即,VAL是0和PyErr_Occurred()返回true)。我究竟做錯了什麼?他們不應該分別評估Py_True和Py_False嗎?
PyErr_Print()在失敗後調用它時會顯示什麼? – 2009-02-04 16:18:24
我知道,我之前應該做到這一點,但由於多種原因,我無法在應用程序中調用PyErr_Print()。無論如何,我在一個孤立的文件中重現了這一點,這就是我得到的: NameError:name'False'未定義 !!它看起來像這個文字不可用C ...! – UncleZeiv 2009-02-04 17:57:29