python内置函数id的返回值类型是,Python里的id

  python内置函数id的返回值类型是,Python里的id

  函数返回的时候有一个标识,就像我们发包裹的时候,我们都有一个单号,这样大家就可以随时跟踪它的进度。我们今天要讲的内置函数id()也可以看做是用来标识的。那么我们再进一步想,id()返回的最后一个地址在哪里?在下面的返回对象地址问题上,边肖将带领大家在代码中找到答案。

  1.用于返回对象的身份(identity)。其实,这里所谓的身份,就是该对象的内存地址。

  a=1

  打印(id(a))

  Print(hex(id(a)))在我的电脑上,他们返回的是:

  112466960xab9c68 分别是内存地址的十进制和十六进制表示。

  在Python中,整数和短字符被Python缓存以供重用。当我们创建多个等于1的引用时,我们实际上使所有这些引用指向同一个对象。

  a=1

  b=1

  打印(id(a))

  Print(id(b))上述程序返回

  11246696

  1246696可以看出,A和B实际上是指向同一个对象的两个引用。

  2.Python的内置函数id()返回的其实是变量的内存地址

  c=[]

  #这里定义了一个新的变量[],并给它分配了内存空间。比如标题是82482056,C指向内存空间82482056作为名称。

  d=[]

  #这里定义了一个新的变量[],并给它分配了内存空间。比如标题是82452296,D指向内存空间82452296作为名称。

  e=d

  #注意,这里没有定义新的变量,也没有分配新的内存空间。只有E作为名字指向和D一样的目标,也就是内存空间82452296。

  打印(id([]))

  #注意这里定义了一个新变量[],内存空间分配给它,比如标题82481544。但是这句话执行之后,就没有指向内存空间82481544的名字了,也就是说,这个变量就再也取不到了(Python没有C语言的内存指针机制)。此时根据Python的垃圾收集机制,这个变量会被销毁,释放内存空间82481544。

  打印(id([]))

  #这里定义了一个新变量[],内存空间分配给它。根据内存空间分配算法,一般是82481544。这个内存空间分配算法我就不展开了。这句话执行后,同样没有名字指向内存空间82481544。这个变量将被销毁,内存空间3将被print(id(c))释放。

  打印(id(d))

  打印(id(e))

  #这三个句子分别输出它们指向的内存地址。通过本文的学习,我们可以明确,id()返回的是python中一个变量的内存地址,这也是我们今天探索的结果,所以本文的学习到这里就结束了。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • 基本python内置函数eval作用,Python中eval函数
  • 基本python内置函数eval作用,Python中eval函数,python内置函数之eval函数详解
  • python内置函数可以返回列表元组,python内置函数可以返回
  • python内置函数及作用,举例说明Python中内置函数的应用和作用
  • jieba库是python内置函数库,可以直接使用,Python中jieba库
  • python divmod用法,python内置函数divmod
  • divmod在python中含义,python内置函数divmod
  • 查看python内置函数的类型,用什么命令,查看变量内存地址的python内置函数是什么
  • python中常见的内置函数,python内置函数及用法
  • python内置函数大全解释,python内置函数的使用方法
  • python内置函数大全及使用,python内置函数大全表
  • python open语句,python内置函数open()的参数用来指定打开文本文件
  • python内置函数大全解释,菜鸟教程python内置函数_2
  • 菜鸟教程python内置函数,python68个内置函数
  • python内置函数大全解释,菜鸟教程python内置函数_1
  • 留言与评论(共有 条评论)
       
    验证码: