公共对象结构 在Python的对象类型的定义中使用了大量结构。本节描述了这些结构及其使用方法. 所有Python对象最终在对象在内存中的表示开头共享少量字段。它们由PyObject和PyVarObject类型表示,它们又由一些宏的扩展定义,无论是直接还是间接地在所有其他Python对象的定义中使用. PyObject 所有对象类型都是此类型的扩展名。这是一种包含Python将对象指针作为对象处理的信息的类型。在正常的“发布”版本中,它只包含对象的引用计数和指向相应类型对象的指针。实际上没有声明为PyObject,但每个Python对象都可以转换为PyObject*。访问主题必须使用宏Py_RE

稳定的应用程序二进制接口 传统上,Python的C API将随每个版本而改变。大多数更改都是源兼容的,通常只需添加API,而不是加入API或删除API(虽然有些接口在首先被弃用后会被删除). 遗憾的是,API兼容性并未扩展到二进制兼容性(ABI)。原因主要是结构定义的演变,添加新字段或更改字段类型可能不会破坏API,但可能会破坏ABI。因此,扩展模块需要针对每个Python版本进行重新编译(尽管在Unix上没有使用任何受影响的接口时可能会出现异常)。此外,在Windows上,扩展模块与特定的pythonXY.dll链接,需要重新编译为更新的. 从Python 3.2开始,已声明API的一个子集

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

4.构建C和C ++扩展 CPython的AC扩展是一个共享库(例如Linux上的.so文件,Windows上的.pyd),它导出initialization function. 要导入,共享库必须在PYTHONPATH上可用,并且必须以模块名称命名,并带有适当的扩展名。使用distutils时,会自动生成正确的文件名. 初始化函数有签名: PyObject * PyInit_modulename( void ) 它返回一个完全 -初始化模块,或PyModuleDef实例。参见初始化C模块了解详情. 对于只有ASCII名称的模块,该函数必须命名为PyInit_<modulename&gt

1.使用C或C ++扩展Python 向Python中添加新的内置模块非常容易,如果你知道C中的toprogram如何。这样extension modules可以做两件事就可以’t bedone直接在Python中:它们可以实现新的内置对象类型,它们可以调用C库函数和系统调用. 为了支持扩展,Python API(应用程序编程接口)定义了一组函数,宏和变量,提供对Python运行时系统的大多数方面的访问。Python API包含在一个Csource文件中,包含标题”Python.h”. 扩展模块的编译取决于它的预期用途以及你的系统设置;细节在后面的章节中给出. 注意 C扩展接口特定

使用户可以轻松自定义WordPress的其中一个功能是Widgets。WordPress中这个灵活的系统在版本2.2的时代被添加回来。现在大多数主题都带有一个小部件就绪的侧边栏和其他主题位置,可以很容易地自定义您的WordPress网站。虽然默认的WordPress小部件工作正常,但您可以使用我们将在本文中介绍的一些非常棒的插件轻松扩展这些小部件的功能。通过扩展默认WordPress小部件的功能,您可以更好地控制显示内容,从而实现更加轻松的自定义选项。 Widgets Reloaded Just Tadlock写了一个名为Widgets的惊人插件Reloaded将许多默认的WordPress小

如果你还没有听说过,WordPress 3.3改变了管理菜单的显示方式。WordPress 3.3没有可选的可扩展菜单,而是将它们全部转换为弹出菜单。WordPress社区对这是否是一个好主意进行了辩论。有些人更喜欢旧的布局。这是因为用户以前可以选择决定要扩展哪些菜单项。现在该选项不再可用,并且在某些情况下,如果您有一个非常长的子菜单,新布局可能真的很难使用。幸运的是,有一个插件可以保持所有菜单的扩展。 要开始安装并激活Expanded Admin Menus插件。该插件会自动展开管理面板中的所有菜单。 再一次,如果你没有很长的子菜单,这可能不是最好的方法,但对于你们中的一些人来说,这可能更好

WordPress有一个很好的用户管理系统,这就是为什么许多人用它来创建多作者网站和博客。WordPress用户管理之所以如此强大,是因为它允许您扩展功能。通常我们会收到用户的电子邮件,询问我们Site X如何拥有如此出色的用户个人资料页面或注册页面。在大多数情况下,这些网站正在添加其他用户个人资料字段,以收集和显示其他用户信息,如Twitter,Facebook,博客供稿等。在本文中,我们将展示如何在WordPress注册中添加其他用户个人资料字段。通过使用此方法,您可以收集任何其他信息,例如询问用户是否要在注册时注册您的简报,询问他们的推特ID,他们的地址等。 视频教程 订阅WPBegin

运行多个WordPress站点最具挑战性的部分是更新主题,插件和备份所有WordPress站点。我们的用户经常会询问我们从一个位置管理多个WordPress网站的最佳方式。之前我们向您展示了如何使用ManageWP和InfiniteWP管理多个站点。在本文中,我们将向您展示如何使用MainWP管理多个WordPress站点。 什么是MainWP MainWP是一个自托管的WordPress维护套件。它包含工具和插件,使您可以从单个仪表板有效地管理多个WordPress站点。 您可以更新所有网站上的主题和插件,更新WordPress核心,从一个仪表板在任何网站上发布帖子。它还允许您只需单击即可在

最近,我们的一位读者询问是否可以在WordPress中修复翻转图像问题。显然,有时当您从iPhone或其他iOS设备上传图像时,您的图像可能会翻转或上下翻转。在本文中,我们将向您展示如何在WordPress中修复颠倒或翻转图像。 为什么WordPress显示颠倒或翻转图像 某些移动操作系统,尤其是iOS,不会传输其他软件所需的EXIF元数据来确定图像的方向。 此EXIF元数据也可能无法正常传输。它也可能被设备或WordPress网站上的其他软件剥离。 修复此问题可能需要您使用某些图像编辑程序来翻转图像。你也可以在WordPress中做到这一点。请参阅我们的指南,了解如何在WordPress中旋