【python基础】07 - 列表、列表的增删查改与复制、列表的逆置与排序

一、列表

1. 列表的格式

[数据1, 数据2, 数据3, ......]
列表可以一次性存储多个数据,且可以为不同数据类型(但实际应用中建议一个列表中存放的数据类型是一致的)

二、列表的常用操作

1. 查找

① 通过下标查找
name_list = ['Tom', 'Jerry', 'Lora']

print(name_list) # ['Tom', 'Jerry', 'Lora']

print(name_list[0]) # Tom
print(name_list[1]) # Jerry
print(name_list[2]) # Lora
② 通过函数查找

在列表中,常用的查找元素的函数如下:

  • index():返回指定数据所在位置的下标,如果查找的数据不存在则报错。语法为列表序列.index(要查找的数据, 开始位置下标, 结束位置下标)
name_list = ['Tom', 'Jerry', 'Lora']

print(name_list.index('Jerry')) # 1
print(name_list.index('Will')) # 报错ValueError:'Will' is not in list
print(name_list.index('Lora', 1, 2)) # 1
  • count():统计指定数据在当前列表中出现的次数,如果数据不存在则返回0
name_list = ['Tom', 'Jerry', 'Lora']

print(name_list.count('Tom')) # 1
print(name_list.count('Will')) # 0
  • len():访问列表长度,即列表中数据的个数
name_list = ['Tom', 'Jerry', 'Lora']
print(len(name_list)) # 3
③ 判断某值是否存在
  • in:判断指定数据是否 在 某个列表序列中,在返回True,不在返回False
  • not in:判断指定数据是否 不在 某个列表序列中,不在返回True,在返回False
name_list = ['Tom', 'Jerry', 'Lora']

print('Tom' in name_list) # True
print('Will' in name_list) # False
print('Tom' not in name_list) # False
print('Will' not in name_list) # True

2. 增加

  • append():在列表表尾追加数据。可以追加整个列表。
name_list = ['Tom', 'Jerry', 'Lora']

name_list.append('Xiao')
print(name_list) # ['Tom', 'Jerry', 'Lora', 'Xiao']
name_list.append([10, 11, 12]) # append()可以增加一个列表数据
print(name_list) # ['Tom', 'Jerry', 'Lora', 'Xiao', [10, 11, 12]]
  • extend():在列表表尾追加数据,如果数据是序列,则序列的数据逐一添加到列表
name_list = ['Tom', 'Jerry', 'Lora']

name_list.extend('Xiao') # 字符串也是序列
print(name_list) # ['Tom', 'Jerry', 'Lora', 'X', 'i', 'a', 'o']
name_list.extend(['Xiao', 'Hong']) # 只是把序列拆开,然后逐一添加
print(name_list) # ['Tom', 'Jerry', 'Lora', 'X', 'i', 'a', 'o', 'Xiao', 'Hong']
name_list.extend([10, 11]) # 序列拆开追加,区别于append()
print(name_list) # ['Tom', 'Jerry', 'Lora', 'X', 'i', 'a', 'o', 'Xiao', 'Hong', 10, 11]
  • insert():在列表的指定位置增加数据,语法为列表序列.insert(位置下标, 数据)
name_list = ['Tom', 'Jerry', 'Lora']

name_list.insert(1, 'Xiao')
print(name_list) # ['Tom', 'Xiao', 'Jerry', 'Lora']

3. 删除

  • del:语法为del(目标)
    ① 删除列表
name_list = ['Tom', 'Jerry', 'Lora']

del name_list # # del(name_list)也可以,两种写法
print(name_list) #报错,NameError: name 'name_list' is not defined

② 删除指定下标的数据

name_list = ['Tom', 'Jerry', 'Lora']

del name_list[0]
print(name_list) # ['Jerry', 'Lora']
  • pop():删除指定下标的数据(不指定则默认最后一个),并返回该数据,语法为列表序列.pop(下标)
name_list = ['Tom', 'Jerry', 'Lora']

del_name = name_list.pop()
print(del_name) # Lora
print(name_list) # ['Tom', 'Jerry']

del_name2 = name_list.pop(1)
print(del_name2) # Jerry
print(name_list) # ['Tom']
  • remove():移除列表中某个数据的第一个匹配项,语法为列表序列.remove(数据)
name_list = ['Tom', 'Jerry', 'Lora']

name_list.remove('Jerry') # ['Tom', 'Lora']
print(name_list)
  • clear():清空列表
name_list = ['Tom', 'Jerry', 'Lora']

name_list.clear()
print(name_list) # []

4. 修改

① 修改指定位置下标
name_list = ['Tom', 'Jerry', 'Lora']

name_list[1] = 'Lily'
print(name_list) # ['Tom', 'Lily', 'Lora']
② 逆置
  • reverse()
name_list = ['Tom', 'Jerry', 'Lora']

name_list.reverse()
print(name_list) # ['Lora', 'Jerry', 'Tom']
③ 排序
  • sort():语法为列表序列.sort(key=None, reverse=False),注意reverse表示排序规则,reverse=True降序,reverse=False升序(默认)
list1 = [6, 7, 3, 1, 9]
list1.sort() # 默认升序
print(list1) # [1, 3, 6, 7, 9]
list1.sort(reverse=True) # 降序
print(list1) # [9, 7, 6, 3, 1]

5. 复制

  • copy()
name_list = ['Tom', 'Jerry', 'Lora']
name_list2 = name_list.copy()
print(name_list2) # ['Tom', 'Jerry', 'Lora']
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值