Python:列表(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)
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值