前文提及过变量代表内存里的某个数据,这个说法有根据么?

这里我们介绍一个python内建(built-in)函数id。我们先看看id函数的帮助文档吧。在python查某个函数的帮助文档很简单,只用help(xxx)即可。

>>> help(id)

我们使用help查询一下id函数的具体信息如下:

Help on built-in function id in module __builtin__:

id(...)

id(object) -> integer

Return the identity of an object. This is guaranteed to be unique among

simultaneously existing objects. (Hint: it's the object's memory address.)

(END)

从id的帮助文档里可以看出id函数返回值就是id参数object在内存里的地址。

问题又来了,内存里有重复数据么?

>>> x = 5

>>> x

5

>>> y = 5

>>> y

5

此代码里的2个5是分别存储还是只存储一个5呢?我们用id函数来看一看,分析一下。

>>> x = 5

>>> y = 5

>>> x

5

>>> y

5

>>> id(x)

163705520

>>> id(y)

163705520

>>> y = 6

>>> id(y)

153928356

从id返回值来看,前两个返回值是相等的,那我们可以总结一下,在Python里变量“指向”某块内存,这和C语言一样!当y又被赋值其他值的时候,y的id发生了变化,由此可以证明“Python变量指向内存说”的说法正确性!

++++++++++++++++++++++++++++++++++++++++++++++++++++++

python自学教程变量_Python学习入门基础教程(learning Python)--2.2.1 Python下的变量解析...相关推荐

  1. Python学习入门基础教程(learning Python)--5.6 Python读文件操作高级

    前文5.2节和5.4节分别就Python下读文件操作做了基础性讲述和提升性介绍,但是仍有些问题,比如在5.4节里涉及到一个多次读文件的问题,实际上我们还没有完全阐述完毕,下面这个图片的问题在哪呢? 问 ...

  2. python 函数进阶_Python学习入门基础:一篇文章搞定函数基础、函数进阶

    一.函数基础函数的快速体验 函数的基本使用 函数的参数 函数的返回值 函数的嵌套调用 在模块中定义函数私信小编001即可获取Python学习资料01. 函数的快速体验 1.1 快速体验 所谓函数,就是 ...

  3. Python学习入门基础教程(learning Python)--5 Python文件处理

    本节主要讨论Python下的文件操作技术. 首先,要明白为何要学习或者说关系文件操作这件事?其实道理很简单,Python程序运行时,数据是存放在RAM里的,当Python程序运行结束后数据从RAM被清 ...

  4. Python学习入门基础教程(learning Python)--6 Python下的list数据类型

    1. List是数组么? 答案是: 不是!Python 里面有一个非常强大的数据类型list.他什么都能装下!list里面既可以支持 int类型,也可以支持str类型. >>> li ...

  5. 阿里云服务器购买详细教程以及建站入门基础教程

    本系列教程汇总: 买了域名一定需要备案吗?什么情况下不需要备案? 如何购买阿里云服务器(图文教程) 如何购买阿里云香港服务器(图文教程) 如何购买阿里云学生服务器(图文教程) 阿里云是国内第一大云服务 ...

  6. Python学习入门基础教程(learning Python)--6.3 Python的list切片高级

    上节"6.2 Python的list访问索引和切片"主要学习了Python下的List的访问技术:索引和切片的基础知识,这节将就List的索引index和切片Slice知识点做进一 ...

  7. Python学习入门基础教程(learning Python)--5.4 Python读文件详解

    问题1.多余的'\n' 在5.2节里我们基本掌握了Python下的文件读文件操作基本方法,但是也存在一些小小问题,细心的读者会发现下面这幅图的问题. 上图每次打印输出words时,先打印了一行从文件里 ...

  8. Python学习入门基础教程(learning Python)--4.2.3 Python的for实现递归,(0629学习笔记)我研究出来了!...

    呵呵,本节主要简单的讨论一下用for来实现递归操作. 先看一下本节设计的小程序要求,有这样一个list: [1, 2, [3, 4], 5, 6, [7, 8, 9]] 用for循环打印结果是什么样的 ...

  9. Python学习入门基础教程(learning Python)--2.3.5Python返回多个值问题

    本节主要学习Python的函数是如何同时返回多个值的问题. 在学习Python的时候惊奇的发现,Python的函数可以同时返回多个值,很有意思. [python]view plaincopy #def ...

最新文章

  1. python爬虫设置下拉框的值_python爬虫:BeautifulSoup 使用select方法的使用
  2. MarkDown入门及技巧
  3. 用投资的观点学习编程
  4. ubuntu 上网总结
  5. 【数学基础】一份非常适合人工智能学习的概率论基础材料中文版 (国内教材精华)...
  6. 【刷题】BZOJ 4195 [Noi2015]程序自动分析
  7. jbuilder运行一闪而过
  8. “上班那点儿事交流圈”发展计划
  9. vue打开二级或者三级页面传输对象,再刷新浏览器数据丢失问题解决(vue使用router传递数据)
  10. 《转》Babel 入门教程
  11. 网络攻防第七周作业之20189304李小涛
  12. 《延禧攻略》的配色,简直美到爆!
  13. 计算机系统应用 莫军,Configuration tool for ARINC 653 operating systems
  14. win10计算机管理权限,win10如何获取管理员权限?win10获取最高权限的方法
  15. python繁简体转换
  16. 《薛兆丰的经济学课》课程总结2--东西不够
  17. SysML 第一讲:SysML简介
  18. CART分类与回归树
  19. 20170704总结
  20. 旋转矩阵、变换矩阵,李群(Lie Group)、李代数(Lie Algebra)及扰动模型

热门文章

  1. 数字黑洞java_[蓝桥杯][算法提高VIP]数字黑洞 (Java代码)
  2. ado.net连接mysql 类_C# ADO.NET 连接数据库常用到的类及基本操作格式
  3. python教程:如何写类?
  4. Python itertools库详细教程
  5. 对Python中几种快速排序的实现以及运行时间进行比较
  6. python中F/f表达式优于format()表达式
  7. Python---多任务介绍以及Thread的基本使用
  8. html css web笔记,Web/HTML/CSS/的笔记
  9. C语言中流程图的主要作用是,C语言 三大流程控制
  10. ubuntu apt-get指令和apt指令的区别?