Python中的变量与对象

一提到Python总会有人告诉你,Python是面向对象的语言

当你疑惑道:什么是对象呢?

会有人说:Python中一切皆为对象

小小的脑袋里充满了问号/(ㄒoㄒ)/~~,今天我们就来讲一讲对象和变量。

正是向大家介绍这两位前,请容我先介绍一点知识前提:

1.程序运行当中,所有的数据都是存储到内存当中然后再运行的

2.数据处理过程:硬盘——内存条——CPU,所以内存越大存储越多调动越少,处理越快

什么是对象?

在内存里每个数据都会有专门的区域,每一个区域都是一个对象

对象有嘛用呢?

对象实际上就是一个容器,专门用来存储数据。

我们学习的数值、字符串、布尔值、None都是对象。

对象的结构是什么(长什么样啊)?

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

Id:标识。

对象是容器,容器长的一样怎么区分(保持对象的唯一性),就是靠标识。

通过id函数来查看对象的id,Id()。

这三个>>>是进入CMD后输入Python后即可进入(你得提前安好Python)。

id是由解析器生成,在我们的python中,id就是对象的内存地址,对象一旦创建则它的id永远不能再改变。

Type:类型。

用来表示当前对象所属的类型。

比如str in float bool .......

类型决定了对象有哪些功能,int可以计算,字符串可以拼串等等

Python中对象一旦创建,类型也不可改变。

Value:值。

对象中存储的具体数据。

值,有些对象可以改变,有些不可以改变。分为可变对象和不可变对象。

        可变对象:值可以改变。

        不可变对象:值不可改变,例如:字符串、整型、浮点型,之前学的都是不可变的,1 2 3是客观存在的无法改变(True False 等等)。

变量?和对象有嘛关系?

A=3

这是我们常写的一种代码,3是一个对象,A就是一个变量。

变量A如何存储的呢?

对象其实并没有直接存储到变量中。在Python中变量更像对象的一个别名

直接操作圈住的部分不太好操作,现在把它命名为A,直接操作A方便很多,所以说别名。

我们前面讲到,对象有三部分,ID、TYPE、VALUE,变量把这些都存储起来吗?

变量中存储的不是对象的值(value),而是对象的id(标识即内存地址),使用时其实就在通过标识进行查找。

实际证明一下:

a=123

首先创建123,在内存中创建对象对其进行存储

其次在内存中创建一个对象存储变量名与变量对应的值的id

最后通过地址匹配到对象的值

当b=a时

b会把a的id号复制到自己哪里,其实也就索引了123

这也证明了赋值的是标识号(id)

这个时候我仅仅改变a的值,b会发生改变吗?

此时,创建456对象,然后把自己的标识号给到a

因为此时没有给b进行重新赋值所以b不会改变。

我们可以看到仅有a的标识改变,b不受影响。

变量中保存的对象只有在为变量重新赋值时才会改变。

变量和变量之间是相互独立的,修改一个变量不会影响另一个。

  • 12
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ℒฺℴฺνℯ̶ฺ归̶零̶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值