列表的增删改查以及嵌套
列表list
元素可以放各种类型,字符串,数字,bool元组,列表,字典,对象
列表是有序的,可以索引可以切片,跟字符串的索引和切片是一样的操作
如果是取单个的元素,元素本身是什么类型取出来就是什么类型,如果是切片,取出来依然是列表
li = ['haha',123,[14,5,6],''] print(li[0]) print(li[1:4])
print(li[0::2])
列表的增加
1、在后面追加append
li = ['夏利','小立','李白','seven'] li.append('allen') print(li)
#对字符串的任何操作,是新创建了一个字符串,但是对列表的操作,操作的还是原来那个列表
# 对一个列表循环输入,如果输入q则退出 li = ['夏利','小立','李白','seven'] while 1: name = input('输入名字') if name.strip().upper() == 'Q': break else: li.append(name) print(li)
2、按索引插入数据insert
li = ['夏利','小立','李白','seven'] li.insert(0,'小猪') print(li)
3、可迭代的添加extend,也是添加的列表后面,元素只能是可迭代的,会把元素依次迭代添加进去列表
li = ['夏利','小立','李白','seven'] li.extend([1,2,3]) print(li)
列表的删除
1、按索引删除pop
索引默认为空,为空时删除的是最后一位,pop有返回值,可直接打印出来删除的是哪个元素
li = ['夏利','小立','李白','seven']
print(li.pop())
print(li)
2、按元素删除remove
li = ['夏利','小立','李白','seven'] li.remove('夏利') print(li)
3、清空列表clear
li = ['夏利','小立','李白','seven'] li.clear() print(li)
4、删除列表del
li = ['夏利','小立','李白','seven'] del li print(li)
打印会报错,因为不存在这个列表
5、切片删除一块元素
li = ['夏利','小立','李白','seven'] del li[1:3] print(li)
列表的修改
1、根据索引直接赋值
li = ['夏利','小立','李白','seven'] li[1] = '李总' print(li)
2、切片修改,是会把替换的元素迭代插入,所以替换的元素一定是可迭代的
li = ['夏利','小立','李白','seven'] li[0:3]=[1,2,3,'娃哈哈']
print(li)
列表的查询
1、for循环
2、切片查询
print(li[1:3])
公共方法
1、len()
li = ['夏利','小立','李白','seven'] print(len(li))
2、count
li = ['夏利','小立','李白','seven'] l = li.count('seven')
3、通过元素找索引,列表只有index,没有找到会报错,字符串才有find
li = ['夏利','小立','李白','seven'] print(li.index('seven'))
4、排序:从小到大,sort参数默认是False
li = [3,2,1,4,7,9,5] li.sort() print(li)
5、排序:从大到小,把参数改为True
li = [3,2,1,4,7,9,5] li.sort(reverse=True) print(li)
6、翻转列表顺序
li = [3,2,1,4,7,9,5] li.reverse() print(li)

浙公网安备 33010602011771号