首页 > 编程语言 > 详细

enumerate函数、深拷贝浅拷贝

时间:2020-06-15 19:31:29      阅读:44      评论:0      收藏:0      [点我收藏+]
enumerate()是python的内置函数,
enumerate参数为可遍历、迭代的对象,多用户for循环中得到计数、同时获得索引和值,返回一个enumerate对象
list = [4,5,6,7,0,1,2]
for index,value in enumerate(list)
for index,value in enumerate(list,1)#索引从1开始

统计文件的行数、可以用enumerate

count = 0
for index, line in enumerate(open(123.txt,r,encoding=utf-8)):
    count +=1

 

 浅拷贝:

import copy
list1 = [[1,2],fei,66]
list2 = copy.copy(list1)  #浅拷贝
print(id(list1))  #222196936
print(id(list2))  #222197064  对象地址不同

# 改变原始对象中为可变类型的元素的值,会同时影响拷贝对象;
list1[0][0] = 2
print(list2)   #[[2, 2], ‘fei‘, 66]
# 改变原始对象中为不可变类型的元素的值,不会响拷贝对象。
list1[1] = get
print(list2)  #[[2, 2], ‘fei‘, 66]

 

深拷贝:

import copy
list1 = [[1,2],fei,66]
list2 = copy.deepcopy(list1)  #深拷贝
print(id(list1))  #222196936
print(id(list2))  #222197064  对象地址不同

# 改变原始对象中为可变类型的元素的值,不影响拷贝对象;
list1[0][0] = 2
print(list2)   #[[1, 2], ‘fei‘, 66]
# 改变原始对象中为不可变类型的元素的值,不影响拷贝对象。
list1[1] = get
print(list2)  #[[1, 2], ‘fei‘, 66]

 

 



enumerate函数、深拷贝浅拷贝

原文:https://www.cnblogs.com/whcp855/p/13063785.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!