4.1 每日一练

"""
1、写代码
    tupleA = ("a","b","c","d","e")  
    tupleB = (1,2,3,4,5)  
    RES = {"a":1,"b":2,"c":3,"d":4,"e":5} 
写出由tupleA和tupleB得到res的及具体实现过程

tupleA = ('a','b','c','d','e')
tupleB = (1,2,3,4,5)
res = dict(zip(tupleA,tupleB))


2、简述Python的深浅拷贝?

浅拷贝:数据半共享(复制其数据独立内存存放,但是只拷贝成功第一层)
a = [1,2,3,[4,5,6]]
b = a.copy() #浅拷贝方法
print(b)  #输出:[1, 2, 3, [4, 5, 6]]   b浅拷贝了a

b[3][1] = 'aaa'
print(a)  #输出:[1, 2, 3, [4, 'aaa', 6]]
print(b)  #输出:[1, 2, 3, [4, 'aaa', 6]]
#b把其列表的数据修改后,a也被改变了

a[1] = 9
print(a) #输出:[1, 9, 3, [4, 'aaa', 6]]
print(b) #输出:[1, 2, 3, [4, 'aaa', 6]]
#修改a的第一层元素,并不会影响到b

a[3][1] = 9
print(a) #输出:[1, 9, 3, [4, 9, 6]]
print(b) #输出:[1, 2, 3, [4, 9, 6]]
#修改a的第二层元素,会影响到b

深拷贝:数据完全不共享(复制其数据完完全全放独立的一个内存,完全拷贝,数据不共享) 深拷贝就是完完全全复制了一份,且数据不会互相影响,因为内存不共享 import copy a = [1,2,3,[4,5,6]] b = copy.deepcopy(a) #深拷贝方法 print(a) #--输出:[1, 2, 3, [4, 5, 6]] print(b) #--输出:[1, 2, 3, [4, 5, 6]] a[3][1] = 9 b[3][1] = 10 print(a) #--输出:[1, 2, 3, [4, 9, 6]] print(b) #--输出:[1, 2, 3, [4, 10, 6]]
"""

猜你喜欢

转载自www.cnblogs.com/ljy123/p/12616393.html