//浅拷贝:拷贝就是复制,就相当于把一个对象中的所有的内容,复制一份给另一个对象,直接复制,或者说,就是把一个对象的地址给了另一个对象,他们指向相同,两个对象之间有共同的属性或者方法,都可以使用 var obj1={ age:10, sex:"男", car:["奔驰","宝马","特斯拉","奥拓... ...
分类:
Web程序 时间:
2019-04-18 16:42:42
阅读次数:
169
'''列表赋值:不会创建新对象两个列表的内存地址一样'''# lst1 = ["apple", "banana", ["blueberry", "strawberry"]]# lst2 = lst1# print(lst1)# print(lst2)# print(id(lst1))# print( ...
分类:
编程语言 时间:
2019-04-16 13:02:24
阅读次数:
168
一、浅拷贝 浅拷贝是对一个对象的顶层拷贝,通俗地讲就是:拷贝了引用,并没有拷贝内容。 运行结果为: 二、深拷贝 深拷贝是对于一个对象所有层次的拷贝,重新开辟内存地址。 运行结果为: 三、深浅拷贝对比 运行结果为: 说明: c和d的内存地址一样,说明是浅拷贝,两个引用指向的是同一块内存 c,e,f内存 ...
分类:
编程语言 时间:
2019-04-15 20:27:50
阅读次数:
176
直接赋值lst1=[1,2,3]lst2=[1,2,3]print(id(lst1),id(lst2))结果:24260681651922426069393800引用赋值lst2=[1,2,3]lst3=lst2print(id(lst2),id(lst3))lst3.append(4)print(lst2)print(lst3)结果:27897391601362789739160136[1,2,
分类:
编程语言 时间:
2019-04-07 23:41:47
阅读次数:
272
一.深浅拷贝 浅拷贝:拷贝第一层(顶级对象),或者说:父级对象 深拷贝:拷贝所有对象,顶级对象及其嵌套对象,或者说父级对象及其子对象 二.文件操作 2. 写入:w (write): 只能写不能读(先清空文件),文件不存在就新建 3.追加; a (append): 只能追加不能读,不存在则新建 三.文 ...
分类:
其他好文 时间:
2019-04-07 18:05:16
阅读次数:
125
(一)yield和yield from 转自:理解yield yield from (1)yield 1、通常的for…in…循环中,in后面是一个数组,这个数组就是一个可迭代对象,类似的还有链表,字符串,文件。它可以是mylist = [1, 2, 3],也可以是mylist = [x*x for ...
分类:
编程语言 时间:
2019-04-05 12:10:53
阅读次数:
171
JavaScript有基本类型和引用类型 基本类型:Number、String、Boolear、Null、undefined 数据存放在栈 引用类型:Objec、Function 数据存放在堆中 因为引用类型所以要知道深浅拷贝的问题,不然出现一些分歧。 浅拷贝:仅是复制地址,彼此间操作相互影响 深拷 ...
分类:
其他好文 时间:
2019-03-17 21:32:36
阅读次数:
182
java深浅拷贝 一、前言 为什么会有深浅拷贝这个概念? 我觉得主要跟JVM内存分配有关,对于基本数据类型,只存在栈内存,所以它的拷贝不存在深浅拷贝这个概念。而对于对象而言,一个对象的创建会在内存中分配两块空间,一个在栈内存存对象的引用指针,一个在堆内存存放对象。这个时候会有一个问题,你拷贝的只是这 ...
分类:
编程语言 时间:
2019-03-14 00:35:48
阅读次数:
200
深浅拷贝 深浅拷贝分为两部分,一部分是数字和字符串另一部分是列表、元组、字典等其他数据类型。 数字和字符串 对于数字和字符串而言,赋值、浅拷贝和深拷贝无意义,因为他们的值永远都会指向同一个内存地址。 其他数据类型 对于字典、元祖、列表 而言,进行赋值、浅拷贝和深拷贝时,其内存地址的变化是不同的。 创 ...
分类:
编程语言 时间:
2019-03-08 16:49:26
阅读次数:
176