对象的结构|学习笔记

简介: 快速学习 对象的结构

开发者学堂课程【Python 语言基础 1 :语法入门:对象的结构】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/599/detail/8671


对象的结构


内容简介:

1、id(标识)

2、type(类型)

3、value (值)

4、课后练习

每个对象中都要保存三种数据

一、id(标识):

1、id 用来标识对象的唯一性,每个对象都有唯一的 id,用来区分不同的对象的不同之处,相当于人的身份证号

2、通 过 id()函数可以查看对象的 id:

打开 Python 交互模式,输入 id(123)得到 1707338432 即为数值对象 123 的 id

3、id 是由解析器生成的,在 CPython 中,id 即为对象的内存地址

4、对象一旦创建,id 永远不能改变


二、type(类型)

1、type 类型表示当前对象所属的类型(如int、str、bool、None)

2、类型的作用:类型决定了对象的功能

3、通过 type()函数查看类型

4、Python 是一门强类型语言,对象一旦创建,类型不能修改

 

三、value(值)

1、value 值 即为对象中存储的具体数据

 如123:  id=0x111‘hello’: id=0x211

type=<class‘int’>type=<class‘str’>

value=123value=‘hello'

2、有些对象值可以改变:

对象分为两大类—可变对象与不可变对象

不可变对象的值不能改变,学过的数值、字符串、布尔值、空值都为不可变对象。


四、课后练习:

尝试独自画一下对象的内存结构。

相关文章
|
1月前
|
存储 Java
JVM知识体系学习四:排序规范(happens-before原则)、对象创建过程、对象的内存中存储布局、对象的大小、对象头内容、对象如何定位、对象如何分配
这篇文章详细地介绍了Java对象的创建过程、内存布局、对象头的MarkWord、对象的定位方式以及对象的分配策略,并深入探讨了happens-before原则以确保多线程环境下的正确同步。
53 0
JVM知识体系学习四:排序规范(happens-before原则)、对象创建过程、对象的内存中存储布局、对象的大小、对象头内容、对象如何定位、对象如何分配
|
存储 算法 程序员
深入理解程序的结构
深入理解程序的结构
164 0
|
算法
程序的三大结构
程序的三大结构是:顺序结构,选择结构,循环结构。
196 0
|
存储 编译器 C语言
C++ 基础篇之类 & 对象的关系
C++ 在 C 语言的基础上增加了面向对象编程,C++ 支持面向对象程序设计。类是 C++ 的核心特性,通常被称为用户定义的类型。
|
存储
数据结构开篇(数据的概念以及数据的结构与关系)
数据结构开篇(数据的概念以及数据的结构与关系)
114 0
|
存储 算法 Java
数据结构的定义(下):结构是什么
结构?怎一看,有建筑结构,有书本目录结构等等,建筑结构表示建筑物内在物的各个组成部分的关系,目录目录结构表示书中每一章节的顺序,那么数据结构中的结构有表示什么呐? 我们来看看官方定义:相互之间存在一种或多种特定关系的数据元素的集合。顾名思义,数据相互之间的集合,当然肯定是两个或两个以上数据的关系,就一个数据,那来的关系,在计算机中,每个数据元素都是有意义的,不存在孤立的,杂乱无序的数据元素,每个数据之间都是有一定的内在联系。 每了编写出优秀的程序,我们必须处理好数据元素的特性及要处理对象之间的关系,这也是研究数据结构的真正意义所在。那么这些特定关系中都有哪些关系呐?
243 0
|
C语言 C++
数据结构-第二章-线性表-动态/静态分配数据元素各功能实现
数据结构-第二章-线性表-动态/静态分配数据元素各功能实现
1110 0
数据结构-第二章-线性表-动态/静态分配数据元素各功能实现
|
设计模式 存储 前端开发
层次结构及对象的定义|学习笔记
快速学习层次结构及对象的定义
147 0
类的结构分析 下
1.class_getInstanceMethod : 获取实例方法, 如果指定类或其父类不包含带有指定选择的实例方法, 则为NULL. 2.class_getClassMethod : 获取类方法, 如果指定类或其父类不包含具有指定的类方法, 则为NULL. 3.class_getMethodImplementation : 获取方法的具体实现, 如果未查找到, 则进行消息转发.
122 0
类的结构分析 下
|
存储
类的结构分析
我们来分析类的结构: 先引入一个列子,(注意以下代码是在objc源码中调试的): 例子说明: CJLPerson继承于NSObject, CJLTeacher继承于CJLPerson
126 0
类的结构分析