我想从Python获取历史计数(和内容)。你知道吗
从命令行可以使用readline
模块(通过pip install pyreadline
安装):
import readline
x=readline.get_current_history_length()
x
结果应该是2。 但是,使用Python C API的同一代码总是返回零,而不管实际的历史记录是什么:
#include <Python.h>
long GetHistoryCount() {
Py_Initialize();
PyRun_SimpleString("import readline");
PyRun_SimpleString("x=readline.get_current_history_length()");
PyObject *mainModule = PyImport_AddModule("__main__");
PyObject *var = PyObject_GetAttrString(mainModule, "x");
Py_Finalize();
return PyLong_AsLong(var);
}
int main(int argc, char **argv) {
long count = GetHistoryCount();
printf("Count: %ld", count);
return EXIT_SUCCESS;
}
打印:Count: 0
如何从pythoncapi获取历史记录?你知道吗
在this discussion中找到readline模块
目前没有回答
相关问题 更多 >
编程相关推荐