列表是中括号括起来的部分都是列表, 如:
li = [1,2,3,"aass","age",["abc","bcd","123"],89,100,True,False]
以上可以看出, 列表里面可以是字符串, 字符, 数字, 列表, 列表里面嵌套列表, 布尔值等, 元素之间用逗号 (,) 分割.
获取列表中的元素
- #!/usr/bin/env python
- li = [1,2,3,"aass","age",["abc","bcd","123"],89,100,True,False]
- # 索引取值
- print(li[0])
- # 切片取值
- print(li[0:6])
- # 列表元素修改
- li[1]=200
- print(li)
- li[0]=[100,99,98]
- print(li)
结果
- 1
- [1, 2, 3, 'aass', 'age', ['abc', 'bcd', '123']]
- [1, 200, 3, 'aass', 'age', ['abc', 'bcd', '123'], 89, 100, True, False]
- [[100, 99, 98], 200, 3, 'aass', 'age', ['abc', 'bcd', '123'], 89, 100, True, False]
删除列表中的元素
- #!/usr/bin/env python
- li = [1,2,3,"aass","age",["abc","bcd","123"],89,100,True,False]
- # 索引方式删除
- del li[1]
- print(li)
- # 切片方式删除
- del li[2:4]
- print(li)
结果:
- [1, 3, 'aass', 'age', ['abc', 'bcd', '123'], 89, 100, True, False]
- [1, 3, ['abc', 'bcd', '123'], 89, 100, True, False]
通过 for 循环获取列表中元素
- #!/usr/bin/env python
- li = [1,2,3,"aass","age",89,100,True,False]
- for a in li:
- print(a)
结果:
- 1
- 2
- 3
- aass
- age
- 89
- 100
- True
- False
判断元素是否在列表中, 在返回 True, 不在返回 False
- #!/usr/bin/env python
- li = [1,2,3,"aass","age",["abc","bcd","123"],89,100,True,False]
- # in 操作, 判断元素是否在列表中, 在返回 True, 不在返回 False
- v = 2 in li
- print(v)
- v1 = 198 in li
- print(v1)
结果:
True False
获取列表中列表元素
- #!/usr/bin/env python
- li = [1,2,3,"aass","age",["abc","bcd","123"],89,100,True,False]
- # 查找 "bcd"
- a=li[5][1]
- print(a)
结果
bcd
字符串转化成列表
- #!/usr/bin/env python
- # 字符串转化成列表, 数字是不能直接转化成列表.
- str="shssksk"
- new_list= list(str)
- print(new_list)
结果
['s', 'h', 's', 's', 'k', 's', 'k']
将列表转化成字符串, 如果列表中既有字符串, 也有数字需要自己写 for 循环转化
- #!/usr/bin/env python
- list = [1,2,3,"adc","sss","sef"]
- s=""
- for i in list:
- s=s + str(i)
- print(s)
结果:
123adCSSssef
如果元素中只有字符串, 直接使用 join 进行转化
- #!/usr/bin/env python
- list = ["adc","sss","sef"]
- str="".join(list)
- print(str)
结果:
adcssssef
在列表中追加元素
- #!/usr/bin/env python
- list = ["adc","sss","sef"]
- list.append(5)
- print(list)
- list.append("opu")
- print(list)
结果:
- ['adc', 'sss', 'sef', 5]
- ['adc', 'sss', 'sef', 5, 'opu']
清空列表
- #!/usr/bin/env python
- li = ["adc","sss","sef"]
- li.clear()
- print(li)
结果:
[]
拷贝列表
- #!/usr/bin/env python
- li = ["adc","sss","sef"]
- new_li=li.copy()
- print(new_li)
结果
['adc', 'sss', 'sef']
元素在列表出现的次数
- #!/usr/bin/env python
- li = ["adc","adc","sef"]
- new_li=li.count("adc")
- print(new_li)
结果:
2
扩展列表, 参数是可迭代对象, 比如字符串和列表, 注意和 append 不一样
- #!/usr/bin/env python
- li = ["adc","adc","sef"]
- li.extend([1,2,3])
- print(li)
- li.extend("fgh")
- print(li)
结果:
- ['adc', 'adc', 'sef', 1, 2, 3]
- ['adc', 'adc', 'sef', 1, 2, 3, 'f', 'g', 'h']
查找列表中元素索引位置, 从前向后查找, 找到第一个将不再向后查找
- #!/usr/bin/env python
- li = ["adc","adc","sef",22,12,22]
- s=li.index(22)
- print(s)
结果:
3
在指定位置添列表元素, 有两个参数, 第一个参数是指定添加的位置, 第二个参数是添加的内容
- #!/usr/bin/env python
- li = ["adc","adc","sef",22,12,22]
- li.insert(0,[100,99,98])
- print(li)
结果:
[[100, 99, 98], 'adc', 'adc', 'sef', 22, 12, 22]
删除列表中某个元素, 默认是删除最后一个元素, 也可以指定删除元素的位置索引
- #!/usr/bin/env python
- li = ["adc","adc","sef",22,12,22]
- n=li.pop()
- print(n)
- print(li)
结果:
- 22
- ['adc', 'adc', 'sef', 22, 12]
删除列表中的指定元素
- #!/usr/bin/env python
- li = ["adc","adc","sef",22,12,22]
- li.remove(22)
- print(li)
结果:
['adc', 'adc', 'sef', 12, 22]
将列表中的元素反转
- #!/usr/bin/env python
- li = ["adc","adc","sef",22,12,22]
- li.reverse()
- print(li)
结果:
[22, 12, 22, 'sef', 'adc', 'adc']
列表排序, 默认是从小到大排序, 加上 reverse=True 就是从大到小排
- #!/usr/bin/env python
- li = [44,10,22,12,22]
- li.sort(reverse=True)
- print(li)
- li.sort()
- print(li)
结果:
- [44, 22, 22, 12, 10]
- [10, 12, 22, 22, 44]
来源: http://www.bubuko.com/infodetail-2626565.html