1.在另一个应用程序中嵌入Python 前面的章节讨论了如何扩展Python,即如何通过附加C函数库来扩展Python的功能。反过来也是可行的:通过嵌入Python来丰富你的C / C ++应用程序。嵌入为您的应用程序提供了在Python而不是Cor C ++中实现应用程序的某些功能的能力。这可以用于许多目的;一个例子是允许用户通过在Python中编写一些脚本来定制应用程序以满足他们的需求。你可以自己使用它,如果一些功能可以用Pythonmore轻松编写. 嵌入Python类似于扩展它,但并不完全。不同之处在于,当你扩展Python时,应用程序的主程序仍然是thePython解释器,而如果嵌入

5.在Windows上构建C和C ++扩展 本章简要介绍如何使用Microsoft Visual C ++为Python创建Windows扩展模块,并详细介绍如何使用它的背景信息。解释性材料对于学习构建Python扩展的Windows程序员和能够在Unix和Windows上成功构建软件的Unix程序员都很有用. 鼓励模块作者使用distutils方法构建扩展模块,而不是本节中描述的那个。你仍然需要用于构建Python的C编译器;通常是Microsoft VisualC ++。 注意 本章提到了许多包含编码的Pythonversion编号的文件名。这些文件名用版本号表示XY;在实践中,”X”将是

syslog– Unix syslog库例程 这个模块为Unix提供了一个接口syslog库例程。请参阅Unix手册页,了解syslog设施。 该模块包装系统syslog一系列例程。一个可以与系统日志服务器通信的纯Python库在logging.handlers模块中可用SysLogHandler. 该模块定义了以下功能: syslog.syslog(message) syslog.syslog(priority, message) 将字符串message发送到系统记录器。如有必要,添加尾随换行符。每条消息都标有一个由facility和level。可选的priority参数,默认为

nis– 与Sun的NIS(黄页)的接口 nis模块为NIS库提供了一个薄的包装,可用于几个主机的中央管理. 因为NIS只存在于Unix系统上,所以这个模块只适用于Unix. nis模块定义了以下功能: nis.match(key, mapname, domain=default_domain) 在地图key中返回mapname,如果没有,则引发错误(nis.error)。两者都应该是字符串,key是8位清理。返回值是一个任意的字节数组(可能包含NULL和其他的欢乐). 请注意mapname首先检查它是否是另一个名称的别名. domain参数允许覆盖用于查找的NIS域。如果未指定,

resource– 资源使用信息 本模块提供了测量和控制程序使用的系统资源的基本机制. 符号常量用于指定特定的系统资源,并请求有关当前进程或其子进程的使用信息. 一个OSError因系统调用失败而引发的问题 exception resource.error 一个弃用的别名OSError. 改版3.3:以下PEP 3151 ,这个类是@的别名OSError. 资源限制 使用setrlimit()下面描述的功能。每个资源由一对限制控制:软限制和硬限制。软限制是电流限制,可以随着时间的推移逐渐降低或提高。软限制永远不会超过硬限制。硬限制可以降低到大于软限制的任何值,但不会升高。(只有具有

pipes– shell管道接口 源代码: Lib / pipes.py pipes模块定义了一个抽象概念的类pipeline – 从一个文件到另一个文件的一系列转换器 因为模块使用/ bin / sh的命令行,POSIX或兼容外壳os.system()和os.popen()是必须的。 pipesmodule定义了以下类: class pipes.Template 管道的抽象 示例: >>> import pipes >>> t = pipes.Template() >>> t.append(‘tr a-z A-Z’

fcntl– fcntl和ioctl系统调用 该模块对文件描述符执行文件控制和I / O控制。它是fcntl()和ioctl() Unix例程的接口。有关这些调用的完整描述,请参见fcntl(2)和ioctl(2) Unix手册页. 本模块中的所有函数都将文件描述符fd作为其第一个参数。这可以是整数文件描述符,例如sys.stdin.fileno()返回的,或io.IOBase对象,例如sys.stdin本身,它提供fileno()返回一个真正的filedescriptor. 在版本3.3中更改:这个模块中的操作用于提升IOError他们现在提取OSError. 该模块定义了以下内

pty– 伪终端实用程序 源代码: Lib / pty.py pty模块定义了处理伪终端概念的操作:启动另一个进程并能够以编程方式写入和读取其控制终端. 因为伪终端处理高度依赖于平台,所以只有Linux代码才有。(Linux代码应该可以在其他平台上运行,但尚未经过测试。) pty模块定义了以下功能: pty.fork() 叉子。将孩子的控制终端连接到伪终端。返回值是(pid, fd)。请注意,孩子得到pid 0,而fd是invalid。父项的返回值是孩子的pid,而fd是连接到孩子控制终端的文件描述符(也是孩子的标准输入和输出). pty.openpty() 使用os.openpt

tty– 终端控制功能 源代码:LIB / tty.py tty模块定义了将tty放入cbreak和rawmodes的功能. 因为它需要termios模块,它只能在Unix上工作. tty模块定义了以下功能: tty.setraw(fd, when=termios.TCSAFLUSH) 更改文件描述符的模式fd到raw。如果when省略,它默认为termios.TCSAFLUSH,并传递给termios.tcsetattr(). tty.setcbreak(fd, when=termios.TCSAFLUSH) 将文件描述符的模式fd更改为cbreak。如果省略when,则默认为t

termios– POSIX样式tty控件 此模块提供POSIX调用接口以进行tty I / O控制。有关这些调用的完整描述,请参阅termios(3)Unix手册页。它仅适用于那些支持POSIX的Unix版本termios样式安装时配置的I / O控件. 本模块中的所有函数都带有文件描述符fd作为他们的第一个论点。这可以是整数文件描述符,例如sys.stdin.fileno()返回,或者文件对象,例如sys.stdin本身. 该模块还定义了使用此处提供的功能所需的所有常量;它们与C中的对应物具有相同的名称。有关使用这些终端控制接口的更多信息,请参阅系统文档. 该模块定义了以下功能