文章目录
- list定义
- list元素类型
- list创建
- 创建 空 list
- [ ]实现空列表
- 函数list()实现空列表
- 初始化 list
- [] 实现初始化列表
- 函数 list() 实现初始化列表 (strings、tuple 转 list)
- list基本操作(运算符、函数和方法)
- 元素包含判断:操作符 in
- 列表最大、小元素:函数 max()、min()
- 元素出现次数:方法count()
- 列表复制:方法copy()
- 列表叠加:操作符 + or 方法 append()
- 字符串strings 转 字符型元素的list:方法 split()
- str元素list 转 int、float元素list:列表推导
- 增加 list 元素:方法append()
- 删除 list 元素:操作符 del、方法 pop()和方法 remove()
- 操作符 del
- 方法pop() 弹出函数
- 方法remove()
- 更改、插入 list 元素:方法insert(i, x)
- 更改元素
- 插入元素
- 反转列表:方法reverse()
- list实现三大排序
- 选择排序
- 插入排序
- 冒泡排序
list定义
包含0个后或者多个对象的有序序列。列表的长度、内容都是可变的。
list元素类型
列表的元素类型可以是:
1. int型、float型、布尔型、strings型
2. 可以是列表(多维列表)
3. 可以是元组(tuple)
4. 可以是字典(存疑!)
list创建
创建 空 list
[ ]实现空列表
list_a = []
函数list()实现空列表
list_a = list()
初始化 list
[] 实现初始化列表
list_a = [‘你好’, ‘2’, 2, 3.14, [2, 3]]
函数 list() 实现初始化列表 (strings、tuple 转 list)
# tuple 形式
list_a = list((‘’你好, ‘2’, 2, 3.14, [2, 3]))
# strings 形式
Iist_a = list(“中国伟大!”)
list基本操作(运算符、函数和方法)
元素包含判断:操作符 in
# 返回 布尔型
X in list_a
列表最大、小元素:函数 max()、min()
# 获得列表 最大元素
x = max(list_a)
# 获得列表 最小元素
x = min(list_a)
元素出现次数:方法count()
# 得到 x 在列表的次数
count = list_a.count(value)
列表复制:方法copy()
list_b = list_a.copy()
区别于直接赋值
list_a = []
list_b = list_a
# list_b 和 list_a 同时指向了一个列表
列表叠加:操作符 + or 方法 append()
# + 实现
list_a += list_b
# 方法 append() 实现
list_a = list_a.append(list_b)
字符串strings 转 字符型元素的list:方法 split()
# 空白分割
list_a = strings.split()
# “,”号分割
list_a strings.spilt(‘,’)
str元素list 转 int、float元素list:列表推导
# 转换 int
list_a = [int(x) for x in list_a]
# 转化 float
list_a = [float(x) for x in list_a]
增加 list 元素:方法append()
# 将 x 加在 列表 最后面
list_a.append(x)
删除 list 元素:操作符 del、方法 pop()和方法 remove()
操作符 del
# 第 i 到 j 个元素,以 k 为步长
del list_[i: j: k]
方法pop() 弹出函数
# 在列表中删除,并取出第 i 个元素
x = list_a.pop(i)
方法remove()
# 删除第一个x
list_a.remove(x)
更改、插入 list 元素:方法insert(i, x)
更改元素
# 更改单个元素
list_a = [1, 2, 3]
list_a[1] = 1
# 更改大部分元素 列表 长度 多增少减
list_a[i : j] = [1, ‘3’, ‘2’, ‘niaho’]
插入元素
# 在第 i 个元素位置插入,原先元素依次后移
list_a.insert(i, x)
反转列表:方法reverse()
# 反转列表
list_a.reverse()
list实现三大排序
选择排序
for i in range(len(list_a) - 1):
a_min = i
for j in range(i + 1, len(list_a)):
if list_a[a_min] >= list_a[j]:
a_min = j
if a_min != i:
list_a[i], list_a[a_min] = list_a[a_min], list_a[i]
print(list_a)
插入排序
for i in range(1, len(list_a)):
for j in range(0, i):
if list_a[i] <= list_a[j]:
list_a.insert(j, list_a[i])
del list_a[i + 1]
‘’’
t = list_a[i]
for k in range(i, j, -1):
list_a[k] = list_a[k - 1]
list_a[j] = t
’’’
print(list_a)
冒泡排序
for i in range(len(list_a)):
for j in range(len(list_a) - 1 - i):
if list_a[j] >= list_a[j + 1]:
list_a[j], list_a[j + 1] = list_a[j + 1], list_a[j]
print(list_a)