摘要:中,赋值的过程创建对象变量引用该对象完成赋值实际上只是一个引用它指向这个对象。不过这个范围不是永恒不变的,所以尽量不要在自己的程序中尝试使用这个特性。成为更好的自己。参考书籍核心编程第二版
python中,赋值的过程:
a1 = 1
创建对象1
变量a1引用该对象
完成赋值
实际上a1只是一个引用,它指向1这个对象。再举一个例子就好理解了。
当重新定义一个变量:a2
a2 = a1
a2并不是指向a1,而是指向1这个对象。
那是不是只要变量值大小相同就表示引用的是同一个对象了呢?
事实上不是的。例如:
v1 = 4.3
v2 = 1.3 + 3
虽然v1 v2值相同,但是在系统中保存的是两个独立对象
这里之所以用到浮点数而不用整数或字符串举例,是因为 在Python中,整形对象和字符串对象是不可变对象,系统会高效的缓存他们 ,不知情的情况下会认为两个变量引用同一个对象。如下:
a = 1 id(a) #33775960 b = 1 id(b) #33775960 ####### m = 1.0 id(m) #33846944 n = 1.0 id(n) #33846920
id()方法返回对象在内存中的地址 官方文档
事实上,Python认为在程序中这些小整形会被经常用到,所以尽会缓存简单的整型数,缓存的范围是(-1, 100)。 不过这个范围不是永恒不变的,所以尽量不要在自己的程序中尝试使用这个特性 。
----------------------分割线--------------------
最近在看关于python基础的书籍,以弥补自己对python底层的知识的欠缺,特此记录。成为更好的自己。
参考书籍------python核心编程(第二版)
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/37789.html
摘要:该系列文章入门,编程基础概念介绍变量,条件,函数,循环中的数据类型,,,,在中创建对象学一门编程语言正在变得越来越容易,只要念过高中甚至是初中小学,能熟练聊和懂得一点点软件的人,入门一门编程语言都不在话下。 该系列文章: 《python入门,编程基础概念介绍(变量,条件,函数,循环)》 《python中的数据类型(list,tuple,dict,set,None)》 《在python...
摘要:为所有在灾难中受伤害的人们献上祷告。变量就是存在系统中的一个东西,这个东西有一种能力,能够用一根线与某对象连接,它能够钓鱼。这个操作中,和两个变量,引用的是一个对象,都是。所以,当通过修改引用对象的后,没有变化。 今天是2014年8月4日,这段时间灾祸接连发生,显示不久前昆山的工厂爆炸,死伤不少,然后是云南地震,也有死伤。为所有在灾难中受伤害的人们献上祷告。 在《永远强大的函数》那一...
摘要:本文的分享主要围绕以下几个方面能做什么常见应用场景介绍如何学习语法基础实战面向对象编程实战练熟基础小游戏项目的实现与实战一能做什么一种编程语言往往可以应用于多方面,有些方面比较常用,有些方面极为常用。比如表示是一个空列表。 摘要:Python语言的教程虽然随处可见,但是忙于日常业务/学习的你或许:一直想要找个时间学一点,但是又不知道该从何下手?本文将从Python能做什么,如何学习Py...
摘要:除此之外的特定形式还有二进制序列类型,那么我们在这里所说的序列主要包含以下三种列表列表是一种可变序列,一般形式为,方括号内的各项间用逗号分隔。 引言 对于以前没有接触过任何编程语言的人来说,首先能明确编程的目的很重要,往往能明确一个目的,在日后的学习中遇到困难时心态就会轻松许多。当今计算机文化的多元化发展,涌现出了大数据、分布式计算、神经网络、机器学习等众多新概念,即便这样,任何意义上...
摘要:现在我们开始说编程特性第一条变量和数据类型,赋值和输出。从广为流传的说起,用建立一个新的工程在目录建一个文件变量和数据类型,赋值和输出在中,方法是应用程序的入口方法。变量包含三个知识点,新建变量是字符串类型给变量赋值。 用9天入门三门编程语言,有可能嘛,尤其是对没有基础的同学来说?对于想学好的编程的人来说,无论从哪一门语言开始入手,语言的本身其实并不是我们最应该的关心的,至少不是作为一...
阅读 746·2021-09-26 09:55
阅读 2003·2021-09-22 15:44
阅读 1445·2019-08-30 15:54
阅读 1305·2019-08-30 15:54
阅读 2630·2019-08-29 16:57
阅读 485·2019-08-29 16:26
阅读 2464·2019-08-29 15:38
阅读 2106·2019-08-26 11:48