python-列表copy函数
'''
列表的copy函数
1、copy函数的功能
将当前的列表复制⼀份相同的列表,新列表与旧列表内容相同,但内存空间不同
2、copy函数的⽤法
⽰例:
old_list = ['a','b','c']
new_list = py()
print(new_list)
3、copy函数与2次赋值的区别侃侃怎么读
a =[1,2,3]
b = a
⼆次赋值的变量与原始变量享有相同的内存空间
copy函数创建的新列表与原始列表不是⼀个内存空间,不享有数据变更
copy函数在功能上属于浅拷贝
浅拷贝的概念:通俗的说,我们有⼀个列表a,列表⾥⾯的元素还是列表,当我们拷贝初新列表b后,⽆论是a还是        b的内部的列表中的数据发⽣了变化,相互之间都会受到影响,叫做浅拷贝。
浅拷贝:只会对第⼀层的数据,进⾏拷贝,要进⾏更深层次,就不⾏
'''
print('浅拷贝:')
a =[[1,2,3],[5,6,7]]
print('a:',a)
b = a.copy()
print('b:',b)
rookie个人资料
b[0].append(10)
print('b:',b)
print('a:',a)
'''
深拷贝含义:不仅对第⼀层数据,进⾏了copy,对深层的数据也进⾏copy,
原始变量和新变量完完全全不共享数据,叫做深拷贝
'''胡歌个人资料介绍
import copy
print('深拷贝:')
a =[[1,2,3],[4,5,6]]
b = copy.deepcopy(a)
print('*'*30)
print('b',b)
b[0].append(10)
print('b:',b)
print('a:',a)
print('*'*40)
old_list =['python','diango','flask']
new_list = old_list
new_list.append('tornado')
陈坤儿子优优
编剧天下print(new_list)
print(old_list)
print(id(new_list),id(old_list))
ve('tornado')
print(new_list,old_list)
# old_list.clear()
# print(old_list,new_list)
del new_list
print(old_list)
print(old_list)
'''
本题考查的是对深拷贝与浅拷贝的理解,深拷贝:与原始变量内存空间不相同,不共享数据。浅拷贝:浅拷贝是对最外层的数据创建⼀个新的内存空间来存储,⽽对内层的数据内存地址进⾏引⽤。所以C选项正确。
深拷贝内存空间不同,不共享数据;浅拷贝是对最外层的数据创建⼀个新的内存空间来存储,⽽对内层的内存地址进⾏引⽤
'''
print('*'*50)
搜狗输入法不能用
old_list_copy =['python','diango','flask']
new_list_copy = old_py()
print(old_list_copy,new_list_copy)
new_list_copy.append('tornado_copy')
print(old_list_copy,new_list_copy)
print(id(old_list_copy),id(new_list_copy))
text =[4,9]
content = py()
text.append(13)
content.append([5,10])
print(content)