from collections.abc import Iterable
#列表list
# ----------------------创建列表--------------------
list_1 = []
list_2 = ["p",2,["Y","T"],5,{"o"},{"N":3}]
li_1 = list("python") #list()函数接收可迭代的数据
li_2 = list(list_2)
# 可迭代的对象: 字符串、列表、集合、字典、文件
isinstance(list_2, Iterable) #isinstance()函数. 里面两个参数,第一个参数: 对象. 第二个参数: 类型
#-----------------------------访问列表元素----------------------------
# list[n] 访问列表中索引为n的元素
print(list_2[2]) # 正向索引
print(list_2[-1]) # 反向索引
# list[m:n:step] 切片.按步长step获取列表中索引m~n对应的元素(不包括list[n])
print(list_2[1:4:2]) #步长为2.获取索引1~4对应的元素
print(list_2[1:]) #获取索引1~末尾对应的元素
print(list_2[:4]) #获取索引0~4对应的元素
print(list_2[:]) #获取所有元素
# 循环访问 for...in...
#查询列表元素
print(2 in list_2)
print(5 not in list_2)
#--------------------------------------------添加列表元素(增)---------------------------------------------
# append()方法; 在列表末尾添加元素
list_2.append(6) #直接改变list的值
print(list_2)
string = "python"
new_string = string.replace("y","t") #字符串不可变.只能返回新字符串
print(string)
print(new_string)
# extend()方法: 在列表末尾添加另一个列表的元素
print(li_1)
list_3 = list_2
list_3. extend(li_1)
print(list_2)
# insert()方法: 将新元素插入到指定位置
list_3.insert(2,"word")
print(list_3)
# 注意!!!!!
# list可以改变
print(list_2)
print(list_3)
# -----------------------------------------元素排序-------------------------------------------------
#sort(key=None,reverse=False)方法: 按特定顺序对列表元素排序
# key参数: 列表支持的函数.默认微微NONE
