美文网首页
007-列表list

007-列表list

作者: 小D修行笔记 | 来源:发表于2022-07-26 05:34 被阅读0次

\color{red}{列表的简介}
\color{red}{查找(下标、index、count、len)}
\color{red}{判断(in、not in)}
\color{red}{增加(append、extend、insert)}
\color{red}{删除(del、pop、remove、clear)}
\color{red}{修改(下标、reverse、sort)}
\color{red}{复制(copy)}

列表的简介

  • 一次性存储多个数据
  • 一般用来存储相同类型的数据
  • 列表数据是可改的,列表是可变的

[数据1,数据2,数据3,……]

  • 列表可以一次性存储多个数据,且可以为不同数据类型,但一般存储相同类型的数据

列表的常用操作

  • 列表的作用是一次性存储多个数据,程序员可以对这些数据进行的操作有:增、删、改、查

查找

下标

序列名[下标]

list1 = ['张三', '李四', '王五']
print(list1[0])
print(list1[1])
print(list1[2])

输出结果

张三
李四
王五
index()

列表序列.index(数据,开始下标,结束下标)

  • index():返回指定数据所在位置的下标,如果不存在,报错

存在,返回指定数据的索引

list1 = ['张三', '李四', '王五']
print(list1.index('李四'))

输出结果

1

不存在,报错

list1 = ['张三', '李四', '王五']
print(list1.index('lisi'))

输出结果

Traceback (most recent call last):
  File "/Users/apple/Desktop/code1/hello.py", line 2, in <module>
    print(list1.index('lisi'))
ValueError: 'lisi' is not in list
count()

列表序列.count(数据)

  • count():统计指定数据在当前列表中出现的次数
list1 = ['张三', '李四', '王五', '张三', '李四', '张三']
print(list1.count('张三'))

输出结果

3
len()

len(列表序列)

  • 通用方法,可以用来统计字符串、列表、元组、字典的长度

  • 统计列表中元素的个数,即列表的长度

list1 = ['张三', '李四', '王五', '张三', '李四', '张三']
print(len(list1))

输出结果

6

判断

  • 判断返回的是布尔类型,True或False
  • in 和 not in 也属于公共方法
in

要检查的数据 in 序列

  • 判断序列中是否包含要检测的数据,包含返回True,否则返回False
list1 = ['张三', '李四', '王五', '张三', '李四', '张三']
print('张三' in list1)
print('zhangsan' in list1)

输出结果

True
False
not in

要检测的数据 not in 列表序列

  • 判断列表是否不包含要检测的数据,不包含,返回True,否则返回False
list1 = ['张三', '李四', '王五', '张三', '李四', '张三']
print('张三' not in list1)
print('zhangsan' not in list1)

输出结果

False
True

增加

  • 增加指定数据到列表中
append()

列表序列.append(数据)

  • append():列表结尾追加数据
  • 将追加的数据作为一个整体,追加到列表末尾

追加一个数据

list1 = ['a', 'b', 'c']
print(list1)
list1.append('d')
print(list1)

输出结果

['a', 'b', 'c']
['a', 'b', 'c', 'd']

追加一个列表,将列表看做一个元素

list1 = ['a', 'b', 'c']
print(list1)
list1.append(['d', 'e', 'f'])
print(list1)
print(len(list1))

输出结果

['a', 'b', 'c']
['a', 'b', 'c', ['d', 'e', 'f']]
4
extend()

列表序列.extend(数据)

  • 将追加的数据拆开追加到末尾
  • 如果追加的是一个字符,直接将这个字符追加到末尾
  • 如果追加的是一个字符串,将这个字符串中的每个字符分别追加到末尾
  • 如果追加的是一个列表,将列表中的每个元素追加到末尾,列表中的元素不再拆分追加

追加一个字符

list1 = ['a', 'b', 'c']
print(list1)
list1.extend('d')
print(list1)

输出结果

['a', 'b', 'c']
['a', 'b', 'c', 'd']

追加一个字符串

list1 = ['a', 'b', 'c']
print(list1)
list1.extend('def')
print(list1)

输出结果

['a', 'b', 'c']
['a', 'b', 'c', 'd', 'e', 'f']

追加一个列表

list1 = ['a', 'b', 'c']
print(list1)
list1.extend(['dd', 'ee', 'ff'])
print(list1)

输出结果

['a', 'b', 'c']
['a', 'b', 'c', 'dd', 'ee', 'ff']
insert()

列表序列.insert(要插入的下标位置,数据)

  • 在指定位置新增数据,原有数据全部后移
list1 = ['a', 'b', 'c']
print(list1)
list1.insert(1,'dd')
print(list1)

输出结果

['a', 'b', 'c']
['a', 'dd', 'b', 'c']

删除

del

del 目标
del(目标)

  • 可以删除整个列表
  • 也可以删除列表中的一个元素

删除整个列表

list1 = ['aa', 'bb', 'cc', 'dd', 'bb', 'cc', 'bb']
print(list1)
del list1
print(list1)  # 列表已经被删除,报错

输出结果

Traceback (most recent call last):
  File "/Users/apple/Desktop/code1/hello.py", line 4, in <module>
    print(list1)  # 列表已经被删除,报错
NameError: name 'list1' is not defined
['aa', 'bb', 'cc', 'dd', 'bb', 'cc', 'bb']

根据下标删除对应的元素

list1 = ['aa', 'bb', 'cc', 'dd']
print(list1)
del list1[1]  # del(list1[1])
print(list1)

输出结果

['aa', 'bb', 'cc', 'dd']
['aa', 'cc', 'dd']
pop()

列表序列.pop(下标)

  • pop():删除指定下标的数据(默认为最后一个)
  • 返回值为删除的元素

删除指定下标的数据

list1 = ['aa', 'bb', 'cc', 'dd']
print(list1)
temp = list1.pop(1)
print(temp)
print(list1)

输出结果

['aa', 'bb', 'cc', 'dd']
bb
['aa', 'cc', 'dd']

默认删除最后一个元素

list1 = ['aa', 'bb', 'cc', 'dd']
print(list1)
temp = list1.pop()
print(temp)
print(list1)

输出结果

['aa', 'bb', 'cc', 'dd']
dd
['aa', 'bb', 'cc']
remove()

列表序列.remove(数据)

  • remove():移除列表中某个数据的第一匹配项
  • 删除一个数据
list1 = ['aa', 'bb', 'cc', 'dd', 'bb', 'cc', 'bb']
print(list1)
list1.remove('cc')
print(list1)

输出结果

['aa', 'bb', 'cc', 'dd', 'bb', 'cc', 'bb']
['aa', 'bb', 'dd', 'bb', 'cc', 'bb']
clear()

数据列表.clear()

  • 清空列表,删除列表中的所有数据
list1 = ['aa', 'bb', 'cc', 'dd', 'bb', 'cc', 'bb']
print(list1)
list1.clear()
print(list1)

输出结果

['aa', 'bb', 'cc', 'dd', 'bb', 'cc', 'bb']
[]

修改

根据下标,直接修改对应数据

列表序列[下标] = 数据

  • 直接修改指定下标数据
list1 = ['aa', 'bb', 'cc', 'dd']
print(list1)
list1[1] = 'bbb'
print(list1)

输出结果

['aa', 'bb', 'cc', 'dd']
['aa', 'bbb', 'cc', 'dd']
reverse()

列表序列.reverse()

  • 将列表逆置,即反向
list1 = ['aa', 'bb', 'cc', 'dd']
print(list1)
list1.reverse()
print(list1)

输出结果

['aa', 'bb', 'cc', 'dd']
['dd', 'cc', 'bb', 'aa']
sort()

列表序列.sort(key=None, reverse=False)

  • reverse表示排序规则,reverse = True降序,reverse = False升序(默认是升序)
list1 = ['aa', 'dd', 'bb', 'cc']
print(list1)
list1.sort()
print(list1)

输出结果

['aa', 'dd', 'bb', 'cc']
['aa', 'bb', 'cc', 'dd']

复制

列表序列.copy()

  • 复制一个相同的列表
  • 操作的时候,防止对原有列表的破坏
list1 = ['aa', 'dd', 'bb', 'cc']
print(list1)
list2 = list1.copy()
list1.sort()
print(list1)
print(list2)

输出结果

['aa', 'dd', 'bb', 'cc']
['aa', 'bb', 'cc', 'dd']
['aa', 'dd', 'bb', 'cc']

列表的循环遍历

使用while遍历

list1 = ['张三', '李四', '王五']
i = 0
while i < len(list1):
    print(list1[i])
    i += 1

输出结果

张三
李四
王五
使用for遍历
list1 = ['张三', '李四', '王五']
for temp in list1:
    print(temp)

输出结果

张三
李四
王五

列表嵌套

  • 所谓列表嵌套就是一个列表里面包含了其他子列表
name_list = [['张三', '李四', '王五'], ['Tom', 'Lily', 'Rose'], ['团团', '圆圆', '饭饭']]
for level in name_list:
    for name in level:
        print(name,end=' ')
    print()

输出结果

张三 李四 王五 
Tom Lily Rose 
团团 圆圆 饭饭 

相关文章

网友评论

      本文标题:007-列表list

      本文链接:https://www.haomeiwen.com/subject/fgxgirtx.html