目录
列表
列表的声明使用[]
声明的一个变量,[]
中的数据成为元素,元素之间通过,
隔开。元素通过元素所在的位置获取,从左到右从0开始,因为计算机中存储位置是从0开始计算。
names = ["a", "b", "c", "d"]
# 查询
print(names[0],names[3]) # 通过元素位置获取
print(names[1:3]) # 切片获取位置为1,2的元素,左闭右开 不包括3
print(names[-1]) # 获取最后一个元素
print(names[-2:]) # 获取倒数两个的元素切片,空值表示取最后一个位置
print(names[:3]) # 控制表示第一个位置开始
print(names[0:-1:2]) # 步长切片,间隔一个
# 插入
names.append("e") # 往最后位置上插入一个元素
names.insert(1,"a1") # 往指定位置1上插入一个元素
# 修改
names[1] = "a2" # 替换指定位置上的元素
# 删除
names.remove("a2") # 移除指定元素
del names[1] # 删除指定位置的元素
names.pop() # 默认删除最后一个元素
names.pop(0) # 输入删除指定位置
li = ["a", "b", "c", "d", "a"]
print(li.count("a")) # 统计a的个数
li.reverse()
print(li) # 顺序反转
li.extend(names)
print(li) # 扩展其他列表
li.sort() # 排序
关于copy的用法,是列表的浅层复制,它只复制第一层的元素,原因是列表的计算机存储方式,内层的列表实际上是存储内存的位置。只复制内存的地址。
px = ["a", "b", ["c1","c2"], "d", "a"]
px2 = px.copy(); # 复制
px[1] = "B"
px[2][0] = "C1"
print(px)
print(px2)
# 输出结果
# ['a', 'B', ['C1', 'c2'], 'd', 'a']
# ['a', 'b', ['C1', 'c2'], 'd', 'a']
想要深度复制,需要引入单独的copy模块指定深度复制,即可
import copy
px2 = copy.deepcopy(px)
元组
元组的声明用()
进行声明,元组跟列表没有很大区别,最大的一个区别就是元组是不能修改的。只能从中获取值。获取方式与列表一样。
tuplelist = ("a","b","c")