三元运算 三元运算,是条件语句的简单的写法。如果条件为真,则返回值1,否则,返回值2。 深浅拷贝 对于数字(int)和字符串(str)而言,赋值、深拷贝、浅拷贝都无意义,因为内存地址指向同一个。 对于字典、元祖、列表 而言,进行赋值、浅拷贝和深拷贝时,其内存地址的变化是不同的。 (1)赋值,只是创建 ...
分类:
编程语言 时间:
2018-01-28 00:08:18
阅读次数:
238
(三元运算、深浅拷贝、动态参数、全局变量与局部变量、set数据类型 ) set 数据类型--无序,不重复的集合 一.三元运算、三木运算--减少代码量 name=“X1”if 条件 else “x2” 例子:name =" alsx" if 1==1 else "e" 二.深拷贝与浅拷贝:深拷贝拷贝所 ...
分类:
其他好文 时间:
2018-01-21 22:41:20
阅读次数:
217
浅拷贝: A = [[1,2],3,4] B= A.copy() B[0][1] = 5 print(B,A) B = [[1,5],3,4] A = [[1,5],3,4] B[2]=6 A = [[1,2],3,4] B =[[1,2],3,6] 深拷贝: import copy A = [[1 ...
分类:
其他好文 时间:
2018-01-21 14:47:40
阅读次数:
169
深浅拷贝 对于 数字 和 字符串 而言,赋值、浅拷贝和深拷贝无意义,因为其永远指向同一个内存地址。 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 import copy # ######### 数字、字符串 ######### n1 = 123 # n1 = "i am ...
分类:
编程语言 时间:
2018-01-19 22:20:01
阅读次数:
215
Python中,对象的赋值,拷贝(深/浅拷贝)之间是有差异的,如果使用的时候不注意,就可能产生意外的结果。 首先,对 赋值 操作我们要有以下认识: 1. 赋值是将一个对象的地址赋值给一个变量,让变量指向该地址( 旧瓶装旧酒 )。 2. 修改不可变对象( 、`tuple`)需要开辟新的空间 3. 修改 ...
分类:
编程语言 时间:
2018-01-17 21:52:16
阅读次数:
173
深浅拷贝 一、数字和字符串 对于 数字 和 字符串 而言,赋值、浅拷贝和深拷贝无意义,因为其永远指向同一个内存地址。 1 import copy 2 #定义变量 数字、字符串 3 n1 = 123 4 #n1 = 'nick' 5 print(id(n1)) 6 7 #赋值 8 n2 = n1 9 ...
分类:
编程语言 时间:
2018-01-17 00:51:00
阅读次数:
200
一,深浅拷贝 看拷贝列子day19-1.py 假如修改的元素是一个列表,源列表也会发生变化day19-2.py 为什么会这样,因为第一次修改的是一个不可变元素对应的指针发生了变化,第二次s和s3指向的内存地址是一个可变的元素(列表)当列表发生改变,但是列表的内存地址没有改变s和s3的指向没有发生改变 ...
分类:
编程语言 时间:
2018-01-16 18:16:17
阅读次数:
123
有一段时间没有更新博客了,忙于工作。2018年刚过去,今天来开启2018第一篇博文。好了,咱们步入正题。 先上代码 代码解释的很清楚,精简一下代码(核心代码就两行) 首先深复制和浅复制只针对像 Object, Array 这样的复杂对象的。简单来说,浅复制只复制一层对象的属性,而深复制则递归复制了所 ...
分类:
Web程序 时间:
2018-01-14 15:15:14
阅读次数:
272
作者:田小计划 出处:http://www.cnblogs.com/wilber2013/ Python中,对象的赋值,拷贝(深/浅拷贝)之间是有差异的,如果使用的时候不注意,就可能产生意外的结果。 下面本文就通过简单的例子介绍一下这些概念之间的差别。 对象赋值 直接看一段代码: will = [" ...
分类:
编程语言 时间:
2018-01-13 11:20:06
阅读次数:
240
```s = [‘s‘, ‘sname‘, [1, 2]]s1 = s.copy()s1[0]=‘s1‘s[2][0] = 2s1[2][1]=4print(s)print(s1)输出:[‘s‘, ‘sname‘, [2, 4]][‘s1‘, ‘sname‘, [2, 4]]浅拷贝只拷贝
分类:
编程语言 时间:
2018-01-10 14:05:23
阅读次数:
165