资料下载网
首页 计算机 考试教辅
The Python C API pdf电子书免费下载,百度云
首页 > 计算机 > 计算机F > The Python C API pdf电子书免费下载,百度云

《The Python C API》pdf电子书免费下载


下载方式一:

百度网盘下载地址:https://pan.baidu.com/s/1816NkaD29RyEuzniCWwhuA
百度网盘密码:1111

下载方式二:

http://ziliaoshare.cn/Download/af_124297_pd_ThePythonCAPI.zip

 


The Python C API

作者:empty

页数:271

出版社:empty

《The Python C API》介绍

Python的应用编程接(API) 使得C和C++程序员可以在多个层级上访问Python解释器.该API在C++中同样可用, 但为简化描述, 通常将其称为Python/CAPI.使用Python/CAPI有两个基本的理由。第二个理由是为了特定的而编写展模块, 它们是扩展Py il解器功能的C模块。这可能是最常见的使用场景, 第二个理由是将Python用作更大规模应用的组件; 这种技巧通常被称为在一个应用中embedding Python,编写扩展模块的过程相对来说更易于理解,可以通过“菜谱”的形式分步骤介绍,使用某些工具可在一定程度上自动化这一过程。虽然人们在其他应用中嵌人Python的做法早已有之, 但嵌人Python的过程没有编写扩展模块样方便直观。许多API函数在你嵌人或是扩展Python这两种场景下都能发挥作用:此外, 大多数嵌人Python的应用程序也需要提供自定义扩展, 因此在尝试在实际应用中嵌人Python之前先熟悉编写扩展应该会是个好主意.

1.1代码标准如果你想要编写可包含于CPython的C代码、你必须遵循在PEP 7中定义的指导原则和标准, 这些指导原则适用于任何你所要扩展的Python版本, 在编写你自己的第三方扩展模块时可以不必遵循这些规范,除非你准备在日后向Python贡献这些模块.1.2包含文件使用Python/CAPI所需要的全部函数、类型和宏定文可通过下面这行语句包含到你的代码之中;der in ePY_SS TZE_T_CLEANin eludes ey thon.h这意味着包含以下标准头文件:c stdio.h>, cstring.hz.c errno.h>.c limits.h>, c assert.h>和c stdlib.h>(如果可用) ,注解:由于Python可能会定义一些能在某些系统上影响标准头文件的预处理器定义, 因此在包含任何标准头文件之前, 你必先包含Python.h。The Python/CAPI, 发布3.8.1It is recommended to always det in ePY_SS1ZE_T_CLEAN before including Python.h.See语句解释及变量编译for a description of this mac toPython.h所定义的全部用户可见名称(由包含的标准头文件所定义的除外) 都带有前級Py或者_Py.以_Py打头的名称是供Python实现内部使用的, 不应被扩展编写者使用.结构成员名称没有保留前缀。注解:User code should never def ie names that begin with Py or_Py.This confuses the reader, and jeopardizesthe portability of the user code to future Python versions, which may define additional names beginning with one ofthese preh xes头文件通常会与Python一起安装。在Unix上, 它们位于以下目录:pre rix/include/python version/和exec_pre tix/include/python version/, 其中prefix和exec_prefix是由向Python的configure脚本传人的对应形所定义, 而version则为'4d.d'务sys.version_info[:2] .在Windows上, 头文件安装于prefix/include, 其中prefix是向安装程序指定的安装目录。要包含头文件,请将两个目录(如果不同)都放到你所用编译器的包含搜索路径中,请不要将父目录放人搜索路径然后使用#include cpython X.Y/Python.h>; 这将使得多平台编译不可用, 因为prefix下平台无关的头文件需要包含来自exec_prefix下特定平台的头文件.C++users should note that although the API is dened entirely using C, the header files properly declare the entrypoints to be extern c .As are sul r, there is no need to do anything special to use the API from C++1.3有用的宏Python头文件中定义了一些有用的宏.许多是在靠近它们被使用的地方定义的(例如Py_RETURN_NONE) .其他更为通用的则定义在这里。这里所显示的并不是一个完整的列表.Py_UNREACHABLE()这个可以在你有一个不打算被触及的代码路径时使用, 例如, 当一个switch语句中所有可能的值都已被ca5e子句覆盖了, 就可将其用在default:子句中, 当你非常想在某个位置放一个assert(0) 或abort() 调用时也可以用这个。3.7新版功能Py_ABS(x)Py_MIN(x, y)Py_MAX(x.y)返回x的绝对值。3.3新版功能返回x和y当中的最小值。3.3新版功能返回x和y当中的最大值。3.3新版功能Py_STRINGIFY(X)Py_MEMBER_SIZE(type, member)Py_CHARM ASK(c)将x转换为C字符串。例如Py_STRINGIFY{123) 返回 123 .3.4新版功能返回结构(type) mem bet的大小, 以字节表示。3.6新版功能参数必须为[-128.127] 或[0.255] 范围内的字符或整数类型。这个宏将c强制转换为unsignedchar返回


《The Python C API》目录

Cntents

1概述

代码标准,

包含文件,

有用的宏

进程控制

异人模块,.

数字协议,

序列协议,

映射协议

迭代器协议

旧缓冲协议

数值对象

序列对象

容器对象.

对象、类型和引用计数

异凉

调试构建.

2稳定的应用程序二进制接

3 The Very High Level Layer

4引用计数

5异常处理

rsin Cntrl

5.10标准异常:.

.1标准告类别,

工具

6.1操作系统实用程序

62系统功能,

6.5Duta mahal lng supprt,

6.0语句解释及变量编译

6.7字符申转换与格式化.

6.8反射

6.9编解码器注册与支持功能

7抽象对象层

7.1对象协议,.

7.6缓冲协议:

8具体的对象层

8.1基本对象

8.5函数对象

8.6其他对象:

9 Initializatin, Finalizatin, and Threads

9.1在Pythn初始化之前.

92全局配置变量.

In it zing and n aig the interp neet

94Prcess-wide parameters.

95Thread State and the Glbal Interpreter Lck

96Sub-interpreter supprt,

9.7

异步通知.

9.8分析和跟踪

9.9高级调试器支持.

9.10ThreadLcalSturage Supprt

10 Pythn初始化配置

10.1Py WideString List.

10.2Py Status

10.Py Pre Cnfig.r

10.4PreniitinwiPyPreCanhg

10.5Py Cnfig.+

10.6InifpzinwthPyCng

10.7 Islated Cnfiguratin

10.8 Pythn Cnfiguratin.

10.9路径配置,

10.10Py_Run Main

10.1Mul-Phase I mtzatnPvtePrvisinalAPI.

11内存管理

11.1概述,

112原始内存接

11.3内存接:.

11.4对象分配器

115默认内存分配器.

11.6 Custmize Memry Allcatrs

11.7Thepyma

计算机


python
AI人工智能
javascript
计算机网络/服务器
数据库技术
计算机F

考试教辅


考研考博
英语四六级

沪ICP备18046276号-5