# ### 列表相关的函数
# 增
# append 向列表的末尾添加新的元素
lst = ["赵沈阳"]
lst.append("沈思雨")
print(lst) #['赵沈阳', '沈思雨']
# insert 在指定索引之前插入元素
lst = ['赵沈阳', '沈思雨']
lst.insert(1,"王伟")
print(lst) #['赵沈阳', '王伟', '沈思雨']
# extend 迭代追加所有元素 #extend--延伸;扩展; 延长; 提供; 扩大
"""迭代追加的数据是可迭代性数据(容器类型数据:列表、元组、集合、字典、字符串,range对象,迭代器)"""
lst = ['赵沈阳', '沈思雨']
# tup = (1,2,3)
# lst.extend(tup) #['赵沈阳', '沈思雨', 0, 1, 2]
# strvar = "abc"
# lst.extend(strvar) #['赵沈阳', '沈思雨', 'a', 'b', 'c']
lst.extend(range(3)) #['赵沈阳', '沈思雨', 'a', 'b', 'c', 0, 1, 2]
print(lst)
# 删
# 1.pop 通过指定索引删除元素,若没有索引移除最后那个 (推荐)
lst = ["曹静怡","王志国","邓鹏","合理"]
# 不指定下标,默认删除最后一个
res = lst.pop()
print(res) #合理
print(lst) #['曹静怡', '王志国', '邓鹏']
# 指定下标,删除具体某个元素
res = lst.pop(1)
print(res) #王志国
print(lst) #['曹静怡', '邓鹏']
# 2.remove 通过给予的值来删除,如果多个相同元素,默认删除第一个
lst = ["曹静怡","王志国","合理","邓鹏","合理"]
res = lst.remove("合理")
print(res) #None
print(lst) #['曹静怡', '王志国', '邓鹏', '合理']
# 3.clear 清空列表
lst = ["曹静怡","王志国","合理","邓鹏","合理"]
lst.clear()
print(lst) #[]
# 改查 参考python-day07_06 列表的相关操作.py
# 列表的其他相关函数
# index 获取某个值在列表中的索引(字符串中index找不到返回error,find找不到返回-1)
lst = ["曹静怡","王志国","合理","邓鹏","合理","邓鹏辉","邓鹏蓝","合理","邓鹏绿"]
res = lst.index("合理") #2 查找第一个出现“合理”的索引
res = lst.index("合理",3) #4 从第3个索引开始查找
res = lst.index("合理",3,6) #4 从第3到第5个索引查找
# res = lst.index("合理大") error
print(res)
# count 计算某个元素出现的次数
res = lst.count("合理") # 没有范围的概念
print(res) #3
# sort 对列表排序
lst = [-90,-100,-1,90,78]
# 从小到大进行排序
lst.sort()
# 从大到小进行排序
lst.sort(reverse=True) #[90, 78, -1, -90, -100]
print(lst)
# 对字符串进行排序(按照ascii编码)
lst = ["kobi","james","jordon","yaoming","yi"]
lst.sort() #['james', 'jordon', 'kobi', 'yaoming', 'yi']
print(lst)
# 是否可以对中文排序(了解 无规律可循)
lst = ["王文","蔡徐坤"]
lst.sort() #['王文', '蔡徐坤']
print(lst)
# reverse 列表反转操作
lst = [1,2,"a","蔡徐坤","易烊千玺"]
lst.reverse() #['易烊千玺', '蔡徐坤', 'a', 2, 1]
print(lst)