Python 源码剖析(二)—— 第一次修改 Python 源代码

来源:互联网 发布:iphone倒计时软件 编辑:程序博客网 时间:2024/05/24 03:19

对于输出信息,使用 printf 最为简单。但是 printf 要输出 Python 中的某个对象却不是那么方便,幸好 Python 的 C API 提供了一个输出对象的接口:

  • object.h(在 pythoncore ⇒ Include)

    PyAPI_FUNC(int) PyObject_Print(PyObject *, FILE *, int);            // 将 PyObject 打印到指定的文件流中
  • intobject.h(pythoncore ⇒ Objects)

    static intint_print(PyIntObject *v, FILE *fp, int flags);                // 在命令行界面中                 // print 100 时会调用的底层函数

    在该函数的开头添加如下代码:

    PyObject* str = PyString_FromString("I am in int_print.");PyObject_Print(str, stdout, 0);printf("\n");

此时,重新编译 python 解决方案,会得到新的 python27_d.dll,双击 python_d.exe,便可得到期待的结果:


这里写图片描述

0 0
原创粉丝点击