Python:5.列表的内置方法(copy和循环)

Python Loading... 阅读 0

列表的Copy

什么是列表的copy复制?

简单的说就是照抄上一个列表,然后修改置换等操作。

最简单的实例:

list1 = ['张三','李四','王五','赵六']
list2 = list1.copy()
print(list1)
print(list2)

修改list1的值list2不会发生改变

list1 = ['张三','李四','王五','赵六']
list2 = list1.copy()
# 把列表一的张三改成zhansan,发现list2的值不会改变
list1[0] = 'zhangsan'
print(list1)
print(list2)

输出:
['zhangsan', '李四', '王五', '赵六']
['张三', '李四', '王五', '赵六']
但是这种只是浅Copy,只会复制第一层,第二层或者更多层的数据同样会改变
比如说下面的代码:

# 浅Copy代码:
list1 = ['张三','李四',['王大','骚猪'],'王五','赵六']
list2 = list1.copy()
# 把列表一的张三改成zhansan,发现list2的值不会改变
list1[0] = 'zhangsan'
list1[2][0] = 'saozhu'
print(list1)
print(list2)

有浅copy那么肯定有深copy

而且,copy可以直接调用内置函数来进行调用

import copy
list1 = ['张三','李四',['王大','骚猪'],'王五','赵六']
# 同样的浅copy
list2 = copy.copy(list1)
# 下面的方法为深copy
list3 = copy.deepcopy(list1)
# list2[2][0] = 'sakkkkkkk'
list3[2][0] = 'wanhuasfquq'
print(list1)
print(list3)

列表的循环

name = ['张三','李四',['王大','骚猪'],'王五','赵六']

for i in name:
    print(i)

 

Tags:

版权声明:若无特殊注明,本文皆为《长行客》原创,转载务必保留文章来源。

本文链接:Python:5.列表的内置方法(copy和循环) & https://www.mxooo.cn/309/

推荐阅读
发表评论 取消回复
表情 图片 链接 代码

分享