标准类型层次
根据Manual中The
standard type hierarchy一节的类型信息,我们首先尝试列出一个表:
类型
|
对象类
|
|
|
|
PyNone_Type
|
PyObject
|
None
|
|
|
PyBool_Type
|
PyLongObject
|
NotImplemented
|
|
|
PyEllipsis_Type
|
PyObject
|
Ellipsis
|
|
|
PyLone_Type
|
PyLongObject
|
numbers.Integral
|
numbers.Number
|
|
PyFloat_Type
|
|
numbers.Real
|
|
PyComplex_Type
|
|
numbers.Complex
|
|
PyUnicode_Type
|
PyUnicodeObject
|
Strings
|
Sequences
|
|
PyTuple_Type
|
|
Tuples
|
|
PyBytes_Type
|
PyBytesObject
|
Bytes
|
|
PyList_Type
|
|
Lists
|
|
PyByteArray_Type
|
|
Byte Arrays
|
|
PySet_Type
|
|
Sets
|
Set
|
|
PyTraceBack_Type
|
|
Frozen sets
|
|
PyDict_Type
|
|
Dictionaries
|
Mappings
|
|
PyFunction_Type
|
PyFunctionObject
|
用户自定义函数
|
Callable types
|
|
PyInstanceMethod_Type
|
PyInstanceMethodObject
|
实例的方法
|
|
|
|
生成器函数
|
|
PyCFunction_Type
|
PyCFunctionObject
|
内置函数
|
|
|
|
内置方法
|
|
|
|
类
|
|
|
|
类实例
|
|
PyModule_Type
|
|
Modules
|
|
|
|
|
Custom class
|
|
|
|
|
Class instances
|
|
|
|
|
I/O objects
|
|
|
PyCode_Type
|
|
Code objects
|
Internal types
|
|
PyFrame_Type
|
|
Frame objects
|
|
PyTraceBack_Type
|
|
Traceback objects
|
|
PySlice_Type
|
PySliceObject
|
Slice objects
|
|
PyStaticMethod_Type
|
staticmethod
|
Static method objects
|
|
PyClassMethod_Type
|
classmethod
|
Class method objects
|
|
刚开始接触这个东西,很多地方还不了解,以至于这个简单的表格都无法补全(留待以后慢慢完善)
Py***_Type
这些都是结构体PyTypeObject的实例,以PyLong_Type为例:
- 变量声明在 Inlcude/longobject.h 中:
PyAPI_DATA(PyTypeObject) PyLong_Type;
PyTypeObject PyLong_Type = {
PyVarObject_HEAD_INIT(&PyType_Type, 0)
"int", /* tp_name */
offsetof(PyLongObject, ob_digit), /* tp_basicsize */
sizeof(digit), /* tp_itemsize */
long_dealloc, /* tp_dealloc */
...
&long_as_number, /* tp_as_number */
...
long_new, /* tp_new */
PyObject_Del, /* tp_free */
};
PyTypeObject PyType_Type = {
PyVarObject_HEAD_INIT(&PyType_Type, 0)
"type", /* tp_name */
sizeof(PyHeapTypeObject), /* tp_basicsize */
sizeof(PyMemberDef), /* tp_itemsize */
(destructor)type_dealloc, /* tp_dealloc */
...
>>> type(0L)
<type 'long'>
>>> type(long)
<type 'type'>
>>> type(type)
<type 'type'>
参考
分享到:
相关推荐
python学习课件+python源码90个合集: 002用Python设计第一个游戏(课件+源代码) 004改进我们的小游戏(课件+源代码) 005闲聊之Python的数据类型(课件+源代码) 007了不起的分支和循环(课件) 008了不起的分支和...
python源码 零基础入门学习Python+课件源码资料: 002用Python设计第一个游戏(课件+源代码) 004改进我们的小游戏(课件+源代码) 005闲聊之Python的数据类型(课件+源代码) 007了不起的分支和循环(课件) 008...
005闲聊之Python的数据类型 006Pyhon之常用操作符 007了不起的分支和循环 008了不起的分支和循环2 009了不起的分支和循环3 010列表:一个打了激素的数组 011列表:一个打了激素的数组2 012列表:一个打了激素的数组3...
基于深度学习的垃圾识别分类项目python源码+7种垃圾数据集+训练好的模型.zip 垃圾类型:bottle、injector、vegetable、mask、swab、battery、cigarette 基于深度学习的垃圾识别分类项目python源码+7种垃圾数据集+...
Python编程学习材料,讲解数据类型。
以下是一个简单的围棋(Go)的Python源码描述: 导入相关库:首先需要导入必要的Python库,如numpy(用于处理矩阵数据)等。 创建棋盘:使用二维数组或矩阵表示围棋的棋盘。可以根据游戏规则确定棋盘的大小,通常...
Python源码非常清晰、易于阅读和理解,可以帮助用户学习和掌握Python编程语言的基本语法和高级特性。同时,Python源码中也包括了Python标准库和其他第三方库的源代码,如NumPy、pandas、matplotlib和tensorflow等。...
Python 解释器易于扩展,使用 C 或 C++(或其他 C 能调用的语言)即可为 Python 扩展新功能和数据类型。Python 也可用作定制软件中的扩展程序语言。 本教程只是简单介绍了 Python 语言概念和功能。读者在阅读本教程...
从基础数据类型到高级数据结构,我们引导你构建坚实的编程基础和问题解决能力。 适用人群: 编程初学者,尤其是对Python感兴趣的人。 数据结构与算法爱好者,希望在实际项目中应用所学知识的人。 寻求提升编程技能...
通过随机旋转等方法进行数据增强,选用Adam算法作为优化算法,随着迭代的次数增加降低学习速率,经过尝试,速率设为0.001时效果最好。 4.项目博客:https://blog.csdn.net/qq_31136513/article/details/135080491
基于Pytorch的命名实体识别-信息抽取python源码(支持中英文数据+LSTM+CRF等多种模型)+数据集.zipdata文件夹中有三个开源数据集可供使用,玻森数据 (https://bosonnlp.com) 、1998年人民日报标注数据、MSRA微软亚洲...
Python基于情感词典和机器学习对新闻和微博评论的情感分析源码+项目说明+数据集+代码注释.zip 该资源内项目源码是个人的毕设,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到94.5分,放心下载使用! ...
本项目采用Python语言编写,致力于提供一套完整的深度学习实战源码。项目包含总计14363个文件,其中主要包括以下类型: - Python脚本文件(.py):79个,包含核心算法和模型构建代码; - 图像文件(.jpg):14135个...
Python基于机器学习文本多分类源码+项目说明+数据集.zip 中文文档分类数据集: 陈旸老师的《人人都听得懂的清华大学数据挖掘》里的练习 数据说明: 1、文档共有4中类型:女性、体育、文学、校园 2、训练集放到...
基于英雄联盟知识图谱的问答系统python源码+项目说明+数据.zip # 说明 - spider.py:爬取数据,可参考,但这里并没有使用。 - build_lol_graph.py:构建知识图谱 - question_classification:给定问题,识别里面的...
Python解释器易于扩展,可以使用C语言或C++(或者其他可以通过C调用的语言)扩展新的功能和数据类型。Python也可用于可定制化软件中的扩展程序语言。Python丰富的标准库,提供了适用于各个主要系统平台的源码或机器...
项目概述:《Python3.6入门教程:草根学Python完整源码解析》 主要编程语言:Python 包含文件类型与数量: - Markdown文件:95个(.md) - Python脚本:50个(.py) - XML配置文件:20个(.xml) - IntelliJ IDEA...
Python解释器易于扩展,可以使用C语言或C++(或者其他可以通过C调用的语言)扩展新的功能和数据类型。Python也可用于可定制化软件中的扩展程序语言。Python丰富的标准库,提供了适用于各个主要系统平台的源码或机器...
- Python源码文件 (.py):67个 - Python对象序列化文件 (.pkl):4个 - Markdown文档 (.md):3个 - 图像文件 (.png):2个 - 神经网络基础示例代码:1个 - Git忽略配置文件 (.gitignore):1个 - 项目许可证书 (LICENSE...
基于python+opencvLBPH实现人脸表情识别系统完整源码+GUI界面.zip 【资源说明】 建议安装anaconda、pycharm 在anaconda中安装opencv等安装包 该项目带有GUI界面,识别高兴和伤心表情。 该项目是个人毕设项目源码,...