Python--List
1、定义方式:
li=[元素1,元素2,.....]
li=list()默认创建一个空列表
2、将一个可迭代的元素转换成list
li=list(可迭代的元素) 内部进行for循环每一个元素 当做列表的元素
a、字符串转换成list
str="杨瑞静" li=list(str) print(li)
结果:['杨', '瑞', '静']
b、元组转换成list
tu=("yang","rui","jing") li=list(tu) print(li)
c、字典转换成list
由于字典循环默认是循环key 所以字典转换list有三种形式 key value items
(1)默认key转换list
dict={"k1":"yang","k2":"rui","k3":"jing"} li=list(dict) print(li) ['k3', 'k1', 'k2']
(2) value转换list
dict={"k1":"yang","k2":"rui","k3":"jing"} li=list(dict.values()) print(li) ['yang', 'rui', 'jing']
(3)items转换list
dict={"k1":"yang","k2":"rui","k3":"jing"} li=list(dict.items()) print(li) [('k1', 'yang'), ('k3', 'jing'), ('k2', 'rui')]
3、list特有功能
a、append 在列表后面追加元素
li=["a","b"] li.append("c") print(li) ['a', 'b', 'c']
b、clear 清楚list中的元素
li=["a","b"] print(len(li)) li.clear() print(len(li)) 2 0
c、extend 用另外一个可迭代的对象扩充到自己内部(str,list,dict,tuple)
li=["yang","rui"] print(li) # 字符串 s="jing" li.extend(s) print(li) # 集合 li1=["123","234"] li.extend(li1) print(li) # 字典 默认扩充的内容的key值 因为内部循环默认是key循环 dict={"k1":"abc","k2":"nbm"} li.extend(dict) print(li) # 指定以字典value扩充 li.extend(dict.values()) print(li) #指定以字典item扩充 扩充到list中的每一个元素都是元组形式 li.extend(dict.items()) print(li) # 元组 tu=("lll","kkk") li.extend(tu) print(li)
['yang', 'rui'] ['yang', 'rui', 'j', 'i', 'n', 'g'] ['yang', 'rui', 'j', 'i', 'n', 'g', '123', '234'] ['yang', 'rui', 'j', 'i', 'n', 'g', '123', '234', 'k2', 'k1'] ['yang', 'rui', 'j', 'i', 'n', 'g', '123', '234', 'k2', 'k1', 'nbm', 'abc'] ['yang', 'rui', 'j', 'i', 'n', 'g', '123', '234', 'k2', 'k1', 'nbm', 'abc', ('k2', 'nbm'), ('k1', 'abc')] ['yang', 'rui', 'j', 'i', 'n', 'g', '123', '234', 'k2', 'k1', 'nbm', 'abc', ('k2', 'nbm'), ('k1', 'abc'), 'lll', 'kkk']
d、reverse 翻转自身
#list自身翻转 li=["1243","mmmm",90] print(li) li.reverse() print(li)
结果
['1243', 'mmmm', 90] [90, 'mmmm', '1243']
e、insert 向指定的位置插入元素
li=["1243","mmmm"] print(li) li.insert(0,123) li.insert(2,"abc") li.insert(len(li),"end") print(li)
结果
['1243', 'mmmm'] [123, '1243', 'abc', 'mmmm', 'end']
4、公共功能
a、索引
li=["杨","瑞","静"] #根据索引获取指定位置的元素 s=li[0] print(s) #获取指定元素的索引 i=li.index("瑞") print(i)
结果
杨 1
b、切片
li=["杨","瑞","静"] s=li[0:2] print(s)
结果:
['杨', '瑞']
注意:切片含头不含尾
c、迭代
5、多层嵌套