#!/usr/bin/env python# -*- coding: UTF-8 -*-"""将一个列表的数据复制到另一个列表中。""""""
使用[:]
"""
a =[1,2,3]
b = a[:]print b # 将a的数据赋值给b 当a的数值发生改变时b不变[1,2,3]
a =[1,2,3]
b = a
print b # 将a的地址赋值给b 当a的数值发生改变时b随之改变[1,2,3]
a =[1,2,3]
b = a[:]print b
a[0]=0print a # 将a的数据赋值给b 当a的数值发生改变时b不变print b
[1,2,3][0,2,3][1,2,3]
a =[1,2,3]
b = a
print b
a[0]=0print a # 将a的地址赋值给b 当a的数值发生改变时b随之改变print b
>>>import copy
>>> a =[1,2,3,4,5]>>> b =["A","B",a]>>>#浅拷贝>>> c = b[:]>>> c
['A','B',[1,2,3,4,5]]>>> a[0]=11>>> c
['A','B',[11,2,3,4,5]]>>>#此时a变化c跟着变化>>>#深拷贝>>> c = copy.deepcopy(b)>>> c
['A','B',[11,2,3,4,5]]>>> a[0]=111>>> a
[111,2,3,4,5]>>> c
['A','B',[11,2,3,4,5]]>>>#此时c中数据不受a影响>>>
白木潇潇夕
110***9234@qq.com
使用 Python2 的参考解法:
使用 Python3 的参考解法:
白木潇潇夕
110***9234@qq.com
Chivalry
825***501@qq.com
使用 for 循环出列表元素,并逐以放到新的列表中:
Chivalry
825***501@qq.com
途途
maq***dream@163.com
使用列表生成式:
途途
maq***dream@163.com
渡solong
157***7972@qq.com
参考方法:
渡solong
157***7972@qq.com
思儿
xuj***sicn@163.com
参考实例:
思儿
xuj***sicn@163.com
chen
127***8522@qq.com
比较暴力的一个方法,前面大佬们没提到
chen
127***8522@qq.com
风风
295***139@qq.com
表1拓展到表2中
风风
295***139@qq.com
whaike
hua***573@126.com
补充一个深拷贝与浅拷贝的问题
whaike
hua***573@126.com