码迷,mamicode.com
首页 > 其他好文 > 详细

列表的操作(增/刪/查/改/切片/合并/);列表的copy

时间:2017-10-14 14:35:48      阅读:136      评论:0      收藏:0      [点我收藏+]

标签:列表   auth   code   直接   extend   class   默认   个数   lis   

# Author:nadech
names = ["cxx", "sjp", "lsw", "dyq", "lsw"]

###循环打印
for name in names:
    print(name)

# 这里打印的是从起始位置到最后的位置,然后步长为2
print(names[::2])

#########增########
#在末尾增加
names.append("cjl")
print(names)
#在制定位置增加,例如第二个位置
names.insert(1,"cs")
print(names)

########改#######
#在某个位置替换掉某个数据
names[0] = "cxxxx"
print(names)

########删#######
names.remove("sjp")
print(names)
names.pop()

del names[3]
print(names)

#默认不指定坐标的时候就pop出最后一个,但是也可以制定坐标
names.pop(1)
print(names)

########查#########
########切片#######
#输出某个数据就用对应的坐标
print(names[0])
#输出多个数据,设置起始坐标,顾头不顾尾
print(names[0:2])
#当想要输出最后一个数据,却又不知道对应坐标
print(names[-1])
#输出后面的两个数据,不知道坐标,还是顾头不顾尾
print(names[-3:-1])
#输出最后的两个数据,包含最后一个数据,要用:空代表
print(names[-2:])

########通过内容找index#########
print(names.index("lsw"))
print(names[names.index("lsw")])
######统计某一名字出现的次数
print(names.count("lsw"))

#########将一个list合并另一个list
names2 = [1, 2, 3, 4 ]
names.extend(names2)
print(names)
del names2
print(names2)

name2 = names.copy()
names[0] = "cxxxxxxx"

print(names)
print(name2)

列表的copy

# Author:nadech
import copy

‘‘‘‘
#浅copy有三种:
name1 = copy.copy(names)
name2 = names[:]
name3 = list(names)
‘‘‘

#name1赋值给name2时,name2直接开辟了新的内存空间,当name1的值改变时,name2并不会改变
name1 = "sjp"
name2 = name1
print(name1)
name1 = "sjpppp"
print(name1)
print(name2)
#names的值copy给names2,但是这是一种浅copy,只能copy第一层:
#当names的第一层数据变时,names2并不会改变
#当names的第二层数据变时,names2会改变,列表中的列表只是一个内存地址的指针
names = ["cxx","sjp","lsw",["ygr","yxk"]]


names2 = names.copy()
names3 = copy.deepcopy(names)

names[0] = "cxxxxxxxx"
names[3][0] = "ygrrrrr"
print(names)
print(names2)


#######深copy######,把names的所有内容clone了一遍
print(names3)
####比较两个变量的内存地址发现并不是同一个
print(id(names))
print(id(names2))

 

列表的操作(增/刪/查/改/切片/合并/);列表的copy

标签:列表   auth   code   直接   extend   class   默认   个数   lis   

原文地址:http://www.cnblogs.com/nadech/p/7666838.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!