Python 源码剖析(二)—— 第一次修改 Python 源代码
对于输出信息,使用 printf 最为简单。但是 printf 要输出 Python 中的某个对象却不是那么方便,幸好 Python 的 C API 提供了一个输出对象的接口:
object.h(在 pythoncore ⇒ Include)
PyAPI_FUNC(int) PyObject_Print(PyObject *, FILE *, int);// 将 PyObject 打印到指定的文件流中
intobject.h(pythoncore ⇒ Objects)
static int int_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,便可得到期待的结果:
Python 源码剖析(二)—— 第一次修改 Python 源代码相关推荐
- python3源码剖析新版_《Python 3 源码剖析》
介绍 本项目致力于对 Python 3.7 的源码分析,深度参考陈儒大大的<Python 源码剖析>,编写 Python 3 的版本. 希望各位 Python 爱好者能参与其中,一起探索 ...
- 《Python源码剖析》读书笔记
<Python源码剖析>电子书下载 http://download.csdn.net/detail/xiarendeniao/5130403 Python源码在官网有下载链接,用ctags ...
- Python源码剖析2-字符串对象PyStringObject
二. 1.PyStringObject与 PyString_Type PyStringObject是变长对象中的不可变对象.当创建了一个PyStringObject对象之后,该对象内部维护的字符串就不 ...
- Python源码剖析[19] —— 执行引擎之一般表达式(2)
Python源码剖析 --Python执行引擎之一般表达式(2) 本文作者: Robert Chen(search.pythoner@gmail.com ) 3.2 Simple.py 前面我 ...
- Python源码剖析[1] —— 编译Python
[ 绝对原创,转载请注明出处] 注意 :第一部分Python总体架构采用了网络文档<The Architecture of Python>,这是网络上唯一可见的以剖析Python实现为己任 ...
- python源码剖析代码例子_Python源码剖析笔记5-模块机制
python中经常用到模块,比如import xxx,from xxx import yyy这样子,里面的机制也是需要好好探究一下的,这次主要从黑盒角度来探测模块机制,源码分析点到为止,详尽的源码分析 ...
- Python猫荐书系统之四:《Python源码剖析》
大家好,新一期的荐书栏目如期跟大家见面了. 先来看看今天的主角是谁:<Python源码剖析--深度探索动态语言核心技术>,2008年出版,作者 @陈儒 ,评分8.7分. 是的,你没看错,出 ...
- Python源码剖析[16] —— Pyc文件解析
Python源码剖析[16] -- Pyc文件解析 2008-02-28 18:29:55| 分类: Python |举报 |字号 订阅 Python源码剖析 --Pyc文件解析 本文作者: Rob ...
- python源码剖析 豆瓣_在数据分析师的分析中豆瓣的书那些值得读
最近总是有人问我有什么书好推荐看看,特烦.但是看到那么多人问,看来挺多人有这个需求,便想了一下,如何通过数据分析找到值得看的书.通过爬取某个标签例如产品,运营获取对应已经打了标签的书,获取书对应的评分 ...
- Python发展的新时代—冯大辉先生谈《Python源码剖析》
Python 3.0 beta 1终于在 6 月 18 号发布了,依照Python一贯主张的简洁,标准,统一精神,Beta版的新特性让我们惊喜的发现,Python正如我们所期望的那样已经进入了一个蓬勃 ...
最新文章
- Swift之深入解析Xcode13对Swift对象生命周期的优化
- DB2表结构DDL脚本导出
- Linux下访问光盘数据
- 极简 Java 工作流概念入门
- html表单有几部分组成,网页制作时表单由哪两部分组成
- 基于Python的植被覆盖度时空变化规律分析
- 数据挖掘实验二结果(构建cube的三个维度,即三个txt,然后做各种查询)C++实现(代码调试环境为Windows下的CLion使用WSL的Linux)
- Python基本语法(初学者,不是很完善)
- PackageManagerService根据权限等级管理权限流程分析(默认赋予apk权限)
- javax.el.PropertyNotFoundException:类型[com.ex.spring.entity.Dept]上找不到属性[dNo]
- MySQL必知必会——第十五章联结表
- 计算机专业毕业设计答辩稿
- 《竞品调研:抄也是一门学问》学习总结
- 记软测面试问题(1)
- 《增广贤文》以及解释
- 2021年全国房地产200强企业销售额分析:房地产101-200强企业销售总额17085.7亿元[图]
- 产生自卑心理的原因是什么?
- 保存tushare所有股票数据,并对涨停进行分析
- 毕业设计-基于BIT的双时相遥感影像变化检测(附下载链接-Python源码+毕业论文+答辩PPT+相关资料等等)
- node crawler简单使用
热门文章
- 自动化部署mysql主从复制集群_使用docker部署mysql主从复制集群
- 配置ssd为缓存_SSD小讲堂丨新电脑剪视频还卡?原因给你们找到了!
- git 本地库的使用
- onepill服务端
- Linux下的Python Socket网络编程(聊天机器人)
- iostream stdlib fstream io.h 头文件的作用
- libSVM + VS2013 + C++使用介绍
- 2019智能手表推荐_戴过 100 块智能手表后,2019年我觉得这4款智能手表最值得买!...
- Introducing and integrating Hibernate(Chapter 2 of Hibernate In Action)
- Bin Packing 装箱问题——NPH问题的暴力枚举 状压DP