一、列表的索引和切片
1.列表的索引
列表和字符串一样样拥有索引
lst = ["a","b","c"] print(lst[0]) # 获取第1个元素 print(lst[1]) # 获取第2个元素 print(lst[2]) # 获取第3个元素
lst[3] = "d" # 修改索引为2的字符串为"d" # ps:列表是可以发生改变的. 字符串不可以 eg: str = "abc" str[0] = "d" # TypeError: 'str' object does not support item assignment
2.列表的切片
lst = ["麻花藤", "王剑", "马芸", "周鸿医", "向华强"] print(lst[0:3]) # ['麻花藤', '王剑', '马芸'] print(lst[:3]) # ['麻花藤', '王剑', '马芸'] print(lst[1::2]) # ['王剑', '周鸿医'] 也有步长 print(lst[2::-1]) # ['马芸', '王剑', '麻花藤'] 也可以倒着取 print(lst[-1:-3:-2]) # 倒着带步长
二、列表的增删改查
1.增加.(list和str不同. list可以发生改变. 所以直接就在原来的对象上进行了操作)
lst = ["麻花藤", "王剑 ", "马芸", "周鸿医", "向华强"] lst.append("小泽玛利亚") lst.insert(1,"苍老师") #在1的位置插入"苍老师". 原来的元素向后移动一位 lst.extend("小苍","大苍") #迭代添加,追加进列表
2.删除(pop, remove, clear, del)
lst = ["麻花藤", "王剑", "马芸", "周鸿医", "向华强"] lst.pop() #删除最后一个 并返回删除的元素 lst.pop(2) #删除索引为2的元素 并返回删除的元素 lst.remove("麻花藤") #删除指定元素 lst.clear() #清空list del lst[1:2] #切片删除
3.修改
lst = ["麻花藤", "王剑 ", "马芸", "周鸿医", "向华强"] lst[1] = "麻花" # 修改索引为1的元素为"麻花" lst[1:3] = ["麻花"] # 如果没有步长,则不用关心元素个数 lst[1:4:3] = ["麻花","大麻花"] #会报错, 如果步长不是1, 要注意元素的个数
4.查询(列表是一个可迭代对象,所以可以进行for循环)
for i in lst: print(i)
5.其他操作
lst = ["麻花藤", "王剑", "马芸", "周鸿医", "向华强"] lst.count("麻花藤") #查询"麻花藤"出现次数 lst1 = [1, 11, 22, 2] lst1.sort() # 排序,默认升序 lst1.sort(reverse=True) # 降序 lst.reverse() # 列表返过来 len(lst) #列表长度
三:元祖
元组: 不可变的列表.又被成为只读列表, 元组也是python的基本数据类型之一,用小括
号括起来,里面可以放任何数据类型的数据, 查询可以. 循环也可以. 切片也可以. 但就是不能修改.count(), index(), len()等方法