1. 定义
#列表的定义是由多种类型组成
#l=[1,"llj",{"name":"haha"},3.14] #l=list([1,"llj",{"name":"haha"},3.14])
2. 类型转换:但凡能够被for循环遍历的类型都可以当做参数传递给list()转成列表
#字符串类型转成列表类型
# l_s=list("llj")
# print(l_s)
#['l', 'l', 'j']
#上面的把字符串转成列表,可以理解成for循环
# new_l=[]
# for i in "llj":
# new_l.append(i)
#['l', 'l', 'j']
#字典类型转成列表类型(字典是无序的)
# l_d=list({"name":"llj","age":20})
# print(l_d) #字典转成列表将字典的key添加到列表中
#['name', 'age']
3.内置方法
#优先掌握
#按索引取值(正向取值+反向取值):既可以取也可以改
l=[11,22,"haha","llj"]
# print(l[0]) #正向取值
# 11
# print(l[-1]) #反向取值
# llj
# l[0]="0000" #可以取也可以改:索引存在则修改对应的值
# print(l)
# ['0000', 22, 'haha', 'llj']
#无论是取值操作还是赋值操作:索引不存在则报错
#往列表末尾添加值
# l.append("追加")
# print(l)
# [11, 22, 'haha', 'llj', '追加']
#往列表任意位置添加值
# l.insert(2,"任意位置")
# print(l)
# [11, 22, '任意位置', 'haha', 'llj']
#实现将新列表添加到l列表中(注意:不是把新列表整体添加到l列表中,按照新列表中的元素添加到l列表中)
new_l={"新","列","表"}
#实现方法一:
# for i in new_l:
# l.append(i)
# print(l)
# [11, 22, 'haha', 'llj', '列', '新', '表']
#实现方法二:
# l.extend(new_l)
# print(l)
# [11, 22, 'haha', 'llj', '新', '表', '列']
#删除
# 方式一: 通用的删除方法,只是单纯的删除、没有返回值
# del l[0] #通用删除
# print(l)
# [22, 'haha', 'llj']
#方式二: pop()根据索引删除,会返回删除的值
# res=l.pop() #不指定索引默认删除最后一个
# print(res)
#llj
# res=l.pop(0) #根据指定的索引删除,返回删除的值
# print(res)
#11
#方式三:remove() #根据列表中的元素删除,返回None
# res=l.remove("llj")
# print(res)
# #None
# l.remove("llj")
# print(l)
#[11, 22, 'haha']
#切片
# print(l[1])
# 22
# print(l[-1])
# llj
# print(l[0:4:2]) #指定步长
# [11, 'haha']
#取列表所有
# print(l[0:len(l)])
# [11, 22, 'haha', 'llj']
# print(l[0:])
# [11, 22, 'haha', 'llj']
# print(l[:])
# [11, 22, 'haha', 'llj']
#列表的间接引用
# list_1=["哈哈","heihei",11,22,[1,2,3]]
# new_2=list_1[:] #切片等同于拷贝行为,而且相当于浅copy
# print(id(list_1),id(new_2))
# #32273728 32439296
# list_1[-1][0]="最后"
# print(list_1)
#['哈哈', 'heihei', 11, 22, ['最后', 2, 3]]
# print(new_2)
#['哈哈', 'heihei', 11, 22, ['最后', 2, 3]]
#列表到过来
# print(l[::-1])
# ['llj', 'haha', 22, 11]
#列表的长度len()
# print(len([1,2,3]))
# 3
#成员运算in 和not in
# print(11 in [11,22,"llj"])
# #True
# print(11 not in [11,22,33])
# #False
#for循环
# l=[11,22,33]
# for i in l:
# l.pop(1) #注意:千万不能在for循环列表中增加和删除索引操作
# for i in [11,22,"llj"]:
# print(i)
# 11
# 22
# llj