gpt4 book ai didi

python - Python 中的 PyObject 是什么?

转载 作者:IT老高 更新时间:2023-10-28 20:41:23 31 4
gpt4 key购买 nike

短版

我最近遇到了一些 Python 代码,其中函数的返回类型在 the documentation 中指定为 PyObject .什么是 PyObject

详细版

我不是 C/C++ 程序员,但是当我在上面链接的文档中遇到 PyObject 时,Google 告诉我 PyObject 是使用定义的 Python 对象Python/C API。具体来说,API documentation PyObject 定义如下:

All object types are extensions of this type. This is a type which contains the information Python needs to treat a pointer to an object as an object. In a normal “release” build, it contains only the object’s reference count and a pointer to the corresponding type object. It corresponds to the fields defined by the expansion of the PyObject_HEAD macro.

坦率地说,我不完全理解这一点,或者它是否回答了我的基本问题,但这并没有让我认为将 PyObject 视为 Python 对象显然是错误的,句号。另一方面,也许技术上算作 PyObject 该类型必须是使用 Python/C API 作为标准 Python 的扩展而创建的。例如,整数是 PyObject 吗?

可能相关的链接

http://docs.scipy.org/doc/numpy/reference/c-api.types-and-structures.html

最佳答案

你可以在 Python 中接触到的每个值都是 C 中的 PyObject。这包括列表、字典、套接字、文件、整数、字符串、函数、类,你可以命名它。如果你可以在 Python 中触摸它,它就是 C 中的 PyObject

关于python - Python 中的 PyObject 是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27683764/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com