一、定义一个列表
列表的取值、添加、删除、反转、排序
names=["zhangmeng", ['wangyanyan', 'wanghuo'], "wangguo"]
print(names)
print(names[0:2]) # 取首不取尾
print(names[:]) # 取所有
print(names[-3:-1])
# -1表示倒数第一个,-3表示倒数第三个。
#只能从左往右,如果为[-1:-3]报错
names.append("hanbo") # 在尾部添加“hanbo”
print(names)
names.insert(1, "wenshuo") # 在位置1添加“文硕”,原位置及后边的元素后移
print(names)
names.remove("wangguo")
print(names)
del names[0] # 删除位置0的元素
print(names)
names.pop(0) # 删除位置0的元素,如:pop()的括号中没有数字则删除最后一个
print(names)
names.reverse() # 反转列表
print(names)
names.insert(2, "wenshuo")
names.pop(1) #删除位置1的元素
print(names)
names.insert(2, "awangguo")
names.sort() # 进行排序
print(names)
执行后的结果
['zhangmeng', ['wangyanyan', 'wanghuo'], 'wangguo']
['zhangmeng', ['wangyanyan', 'wanghuo']]
['zhangmeng', ['wangyanyan', 'wanghuo'], 'wangguo']
['zhangmeng', ['wangyanyan', 'wanghuo']]
['zhangmeng', ['wangyanyan', 'wanghuo'], 'wangguo', 'hanbo']
['zhangmeng', 'wenshuo', ['wangyanyan', 'wanghuo'], 'wangguo', 'hanbo']
['zhangmeng', 'wenshuo', ['wangyanyan', 'wanghuo'], 'hanbo']
['wenshuo', ['wangyanyan', 'wanghuo'], 'hanbo']
[['wangyanyan', 'wanghuo'], 'hanbo']
['hanbo', ['wangyanyan', 'wanghuo']]
['hanbo', 'wenshuo']
['awangguo', 'hanbo', 'wenshuo']
二、深copy和浅copy
import copy
namesyuan=(1,2,3) # 元组不能被 修改
names=["zhangmeng", ['wangyanyan', 'wanghuo'], "wangguo"]
names2=names.copy()
# 浅copy,如当列表的元素中包含列表['wangyanyan', 'wanghuo']那复制的只是['wangyanyan', 'wanghuo']表的地址。
# 当修改names或names2['wangyanyan', 'wanghuo']时两个列表中都改变
namesdep=copy.deepcopy(names)
namesdep[1][1]="deep"
names[1][0] = "浅"
print(names)
print(names2)
print(namesdep)
['zhangmeng', ['浅', 'wanghuo'], 'wangguo']
['zhangmeng', ['浅', 'wanghuo'], 'wangguo']
['zhangmeng', ['wangyanyan', 'deep'], 'wangguo']