在python中,如果查看一个对象的内存地址,可以用到id这个内置函数;使用方式是: id(object)--->返回该对象的10进制的内存地址;

以下是官方定义;翻译为大白话就是,返回一个对象的身份标识;在Cptyhon中用的是对象的内存地址;

def id(*args, **kwargs): # real signature unknown
"""
Return the identity of an object. This is guaranteed to be unique among simultaneously existing objects.
(CPython uses the object's memory address.)def id(*args, **kwargs): # real signature unknown
"""
Return the identity of an object. This is guaranteed to be unique among simultaneously existing objects.
(CPython uses the object's memory address.)
"""

  

下面我们可以通过具体的例子来加深理解:

d1={'a':1,'b':2}
d2=d1
# 定义一个新字典 内容和d1一致
d3=d1.copy() print('原始的字典d1的内存地址是 {}'.format(id(d1)))
print('通过等号赋值d2的内存地址是{}'.format(id(d2)))
print('通过copy方法d3的内存地址是{}'.format(id(d3)))

  

输出的结果是:

------------------------------------------------------

原始的字典d1的内存地址是 2381556574152
通过等号赋值d2的内存地址是2381556574152
通过copy方法d3的内存地址是2381556574552

----------------------------------------------------------------

一定得注意,通过copy方法复制的字典,是新的字典,内存地址是不一样的;通过=赋值的,是同一个字典,内存地址是一样的;

python中如果获取对象的内存地址,及字典的地址的更多相关文章

  1. python中的函数对象的内存地址是多少

    今天和同学讨论一个问题,发现了函数的内存地址和我想象的不一样. 我以为同一个函数,假如给的参数不一样,那么这两个函数的id就不一样. 然后经过实验,发现python为了便于管理函数,所有的函数都放在同 ...

  2. 《python解释器源码剖析》第4章--python中的list对象

    4.0 序 python中的list对象,底层对应的则是PyListObject.如果你熟悉C++,那么会很容易和C++中的list联系起来.但实际上,这个C++中的list大相径庭,反而和STL中的 ...

  3. 《python解释器源码剖析》第2章--python中的int对象

    2.0 序 在所有的python内建对象中,整数对象是最简单的对象.从对python对象机制的剖析来看,整数对象是一个非常好的切入点.那么下面就开始剖析整数对象的实现机制 2.1 初识PyLongOb ...

  4. Python中的可变对象和不可变对象

    Python中的可变对象和不可变对象 什么是可变/不可变对象 不可变对象,该对象所指向的内存中的值不能被改变.当改变某个变量时候,由于其所指的值不能被改变,相当于把原来的值复制一份后再改变,这会开辟一 ...

  5. 【Python核心编程笔记】一、Python中一切皆对象

    Python中一切皆对象 本章节首先对比静态语言以及动态语言,然后介绍 python 中最底层也是面向对象最重要的几个概念-object.type和class之间的关系,以此来引出在python如何做 ...

  6. Python中如何获取类属性的列表

    这篇文章主要给大家介绍了在Python中如何获取类属性的列表,文中通过示例代码介绍的很详细,相信对大家的学习或者工作具有一定的参考借鉴价值,有需要的朋友可以参考借鉴,下面来一起看看吧. 前言 最近工作 ...

  7. python 中变量和对象

    1. 在 python 中,类型属于对象,变量是没有类型的:a=[1,2,3] a="Runoob"以上代码中,[1,2,3] 是 List 类型,"Runoob&quo ...

  8. python中一切皆对象的理解

    一切皆对象? 学过Java都知道,Java中有8个基本类型,其余的都是继承自Object类的引用类型.方法内的基本类型变量会在栈上分配,而引用类型会通过逃逸分析来决定在栈上分配或堆上分配.Java中关 ...

  9. Python中的函数对象与闭包

    函数在Python中是第一类对象,可以当做参数传递给其他函数,放在数据结构中,以及作为函数的返回结果. 下面的例子为接受另外一个函数作为输入并调用它 #foo.py def callf(func): ...

  10. javascript中如何获取对象名

    javascript中如何获取对象名 一.总结 一句话总结:将对象传入参数,看参数是否为函数(js中的对象和函数是一个意思么(函数肯定是对象)),对象参数.name属性即可获得 //版本4 funct ...

随机推荐

  1. JZOJ 2022.07.06【提高组A】模拟

    历程 被暴打了 原因是钻进了 \(T4\) 的坑中... 先看完题,发现 \(T4\) 比较有意思,\(T2\) 没有想法 \(T3\) 挺容易,做法似乎很好想 \(T1\) 送分,十几分钟搞定 然后 ...

  2. SX【2020.01.09】NOIP提高组模拟赛(day1)

    [2020.01.09]NOIP提高组模拟赛(day1) 这次考得不理想,只做了前两题,后两题没时间做,说明做题速度偏慢. source : 100 + 20 + 0 + 0 = 120 rank7 ...

  3. 【模板】AC自动机(二次加强版)

    模板 \(Problem:\) 求 \(n\) 个模式串在文本串中出现的次数 \(templete:\) \(Luogu5357\) \(Code\) #include<cstdio> # ...

  4. JZOJ 3252. 【GDOI三校联考】炸弹

    思路 注:上图只是个例子,其实建图时 \(5\) 是不会连向 \(6\) 的 \(Code\) #include<cstdio> #include<cstring> #incl ...

  5. CF1250C Trip to Saint Petersburg

    题目传送门 思路 线段树入门题. 不妨固定一个右端点 \(r\),把所有右端点小于 \(r\) 的区间都在 \(1\) 至此区间的左端点处 update 一个 \(p\),然后每次都给区间 \(1\) ...

  6. @Transactional千万不要这样用!!踩坑了你都可能发现不了!!!

    前阵子接手了一段同事之前的代码,里面用到了@Transactional注解,了解Spring的小伙伴肯定知道,@Transactional是Spring提供的一种控制事务管理的快捷手段.但是我这段程序 ...

  7. pip换源和制作虚拟环境操作步骤讲解

    目录 一.pip换源及虚拟环境 二.虚拟环境 一.pip换源及虚拟环境 我们Python的强大之处就是有非常多的牛逼的第三方模块,后面的程序员只需要下载第三方模块,然后站在大佬们的肩膀上开发,第三方开 ...

  8. 【C++复习】第六章 数组、指针、字符串

    1.数组 1.1 基本数组 数组声明int a[10]; 声明时方括号内是元素个数.下标从0开始. 第一个元素是a[0],最后一个元素是a[9] a[n]表示的是第n+1个元素 二维数组int b[3 ...

  9. HttpProxyCacheServer (音视频缓存框架)

    implementation 'com.danikula:videocache:2.7.0' //包 MyApplication 中: //音视频缓存框架private HttpProxyCacheS ...

  10. Linux常用的性能分析

    参考文档:https://www.runoob.com/w3cnote/linux-common-command-2.html 一.ps -aux ps -aux ps -ef -a:所有进程. -u ...