文章目录

  • 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)