list 增、删、改、查

回顾  索引、切片、步长

li = ['alex', 123, True, (1, 2, 3, 'wusir'), [1, 2, 3, '小明',], {'name':'alex'}]
#li中元素索引号为li = [01234567.....]
# 索引,切片,步长
print(li[0])#alex 输出列表索引为0的元素
print(li[2])#True 输出列表中索引为2的元素
print(li[1:4])#[123, True, (1, 2, 3, 'wusir')]切取列表li中索引的1--3的元素(顾头不顾尾)
print(li[:5:2])#['alex', True, [1, 2, 3, '小明']]等同print(li[0:5:2])步长为2
print(li[-1:-3:-1])#[{'name': 'alex'}, [1, 2, 3, '小明']]从倒数第一个元素开始截取步长为1

list 增


  • #append
    # li.append('alex')
    # print(li)#[1, 'a', 'b', 'a', 2, 3, '老男孩', 'alex']默认在列表尾部增加alex
    ##
    # print(li.append('alex'))#会显示None,因为append执行的是一个动作,无法print出来,
    #
    #for exmple:新公司添加员工
    # name_list = ['a','b','c','d','e','f']
    # while True:
    #     name = input('请输入新员工姓名:Q/q')
    #     if name.upper() == 'Q':break##如果输入q/Q,退出添加新员工
    #     else:
    #         name_list.append(name)
    #         print('已成功添加新员工%s' % name)
    # print(name_list)
    #
    
    # insert 插入
    # li = [1,'a','b','a',2,3,'老男孩']
    # li.insert(2,'小三')
    # print(li)#[1, 'a', '小三', 'b', 'a', 2, 3, '老男孩']把小三插入到元素2的位置
    ##extend 迭代添加,到最后
    ##迭代添加就是将123/AB拆分成最小的元素添加到li表中,(以例子说明)
    # li.extend([1,2,3])#[1, 'a', 'b', 'a', 2, 3, '老男孩', 1, 2, 3]
    # li.extend('ABC')#[1, 'a', 'b', 'a', 2, 3, '老男孩', 'A', 'B', 'C']

  list 删

# 删删删删
# pop 按索引删除
# li = [1,'a','b','a',2,3,'老男孩']
# li.pop()  # 默认删除最后一个:结果,[1, 'a', 'b', 'a', 2, 3]
# li.pop(1)  # 删除索引为1的元素,结果,[1, 'b', 'a', 2, 3, '老男孩']
# print(li)

# s = li.pop(1)
# print(s)#结果:a

#remove   按元素删除
# li = [1,'a','b','a',2,3,'老男孩']
# li.remove('a')
# print(li)#[1, 'b', 'a', 2, 3, '老男孩']#默认删除第一个出现的元素a

#clear 清空内容
# li = [1,'a','b','a',2,3,'老男孩']
# li.clear()
# print(li)#[] 清空了列表中所有的元素

#del 删除列表
# li = [1,'a','b','a',2,3,'老男孩']
# del li#删除列表
# print(li)#删除整个列表,返回error

#切片删除
# li = [1,'a','b','a',2,3,'老男孩']
# del li[:3]
# print(li)#['a', 2, 3, '老男孩']
#
# del li[:3:2]
# print(li)#['a', 'a', 2, 3, '老男孩']按步长删除
#

list 改

# 改 
# 
# 按照索引改
li = [1,'a','b','a',2,3,'老男孩']
# print(li[1])
# li[1] = 'A'#把索引为1的元素改为A
# print(li[1])#输出:A

# li[1] = [11,22,33,44]#被更改替换的可以是一个list,索引为1的元素a改成[...]
# print(li)#[1, [11, 22, 33, 44], 'b', 'a', 2, 3, '老男孩']

#按照切片去改
# li[:3] = 'Q'#把0:3的元素‘1’'a''b'改为Q
# print(li)#['Q', 'a', 2, 3, '老男孩']
#
# li[:3] = 'alexsb'
# print(li)#['a', 'l', 'e', 'x', 's', 'b', 'a', 2, 3, '老男孩']

li[:3] = [11,22,33,44]
print(li)#[11, 22, 33, 44, 'a', 2, 3, '老男孩']

 list 查

# 查
#索引,切片步长,查看
# for 循环
# li = [1, 'a', 'b', 'a', 2, 3, '老男孩']
# print(li[:3])#查列表li中0:3的元素,[1, 'a', 'b']
#
# for i in li:
#     print(i)#依次打印li中的元素
#
#
# l1 = [1, 2, 1, 7, 5, 4, 9, 8, 3]
#其他操作方法
# sort 从小到大,正向排序
#
# l1.sort()
# print(l1)#[1, 1, 2, 3, 4, 5, 7, 8, 9]

#从大到小,正向排序
#
# l1.sort(reverse=True)
# print(l1)#[9, 8, 7, 5, 4, 3, 2, 1, 1]

#翻转
# l1.reverse()
# print(l1)#[3, 8, 9, 4, 5, 7, 1, 2, 1]

#len 长度
# l1 = [1, 2, 1, 7, 5, 4, 9, 8, 3]
# print(len(l1))#列表中几个字符、元素:9

li = [1,'a','b',1,'a',3,'老男孩']
# count
# print(li.count(1))#查找列表中1出现的次数:2

#index 通过元素找索引
print(li.index('a'))#查找a出现的索引,默认为第一个元素a出现的索引:1