Python数据结构
type命令
- 获取变量值的数据类型序列
1
2
3
4type(5)
# int
type(print)
# builtin_function_or_method - 包含三种类型:字符串、元组、列表
- 特点:有序性、有索引、同类型可拼接、可获取长度、可检查是否包含元素、长度理论不限(收实际物理机内存限制)
元组
- 定义:所有元素使用()扩起,并用逗号分隔。
- 注意:元组是不可变的
- 如果元组只有一个元素,则元素后面必须增加逗号
1
2
3
4type((5))
# int
type((5,))
# tuple - 元组函数列表
1
2
3
4
5
6
7
8
9
10
11x in tup # x是tup元组中的元素返回True,否则返回False
len(tup) # 元组tup的长度
tup.count(x) # 返回x在元组中出现的次数
tup.index(x) # 返回x在tup元组中第一次出现的索引;不存在则ValueError异常
# 可以使用+或*拼接
tup1 = (1,2,3)
tup2 = (4,5,6)
tup1 + tup2
# (1,2,3,4,5,6)
tup1 * 2
# (1,2,3,1,2,3) - 定义:所有元素使用[]扩起,并用逗号分隔
- 注意:列表是可变的,且列表中的元素可以指向自身
1
2
3
4
5pets = ['dog', 'cow', 'frog']
pets[1] = 'cat' # 修改列表中的值
print(pets) # ['dog', 'cat', 'frog']
pets[2] = pets # 列表中的值指向自身
print(pets) # ['dog', 'cat', [...]] - 列表函数
1
2
3
4
5
6
7
8
9s.append(x) # 在列表s末尾添加x
s.count(x) # 返回元素x在列表s中出现的次数
s.extend(lst) # 将lst的所有元素都添加到列表s末尾
s.index(x) # 返回x元素第一次出现的索引
s.insert(i, x) # 将元素x插入到索引i指定的元素前面,结果是s[i] == x
s.pop(i) # 删除并返回s中索引为i的元素,如果i为空,则删除并返回s中最右面的元素
s.remove(x) # 删除s中的第一个x元素
s.reverse() # 反转s中元素的排列顺序
s.sort() # 将s的元素按升序排列 - 列表解析字典
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19# 创建一个1~10平方结果的列表
[n * n for n in range(1,11)]
# [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
# 修改列表
names = ['al', 'mei', 'jo']
cap_names = [n.capitalize() for n in names]
print(names)
# ['al', 'mei', 'jo']
print(cap_names)
# ['Al', 'Mei', 'Jo']
# 筛选列表
def m(s):
print([c for c in s if c.lower() not in 'aeiou'])
return ''.join([c for c in s if c.lower() not in 'aeiou'])
m('Apple Sauce Yes')
# ['p', 'p', 'l', ' ', 'S', 'c', ' ', 'Y', 's']
# 'ppl Sc Ys' - 定义:使用{}扩起,键与值用冒号分隔,多个键值间用逗号分隔
1
2
3color = {'red' : 1, 'blue' : 3}
# 修改值
color['red'] = 2 - 注意
- 键必须唯一,不能重复,重复则以最后出现的为准
- 键是不可变的,值可变
- 字典函数集合
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16d.items() # 返回一个由字典d的键-值对组成的视图
d.keys() # 返回一个由字典d的键组成的视图
d.values() # 返回一个由字典d的值组成的视图
d.get(key) # 返回与key相关联的值
d.pop(key) # 删除键key并返回与之相关联的值
d.popitem() # 返回字典d中的某个键-值对
d.clear() # 删除字典d的所有元素
d.copy() # 赋值字典d
d.fromkeys(s,t) # 创建一个新字典,其中的键来自s,值来自t
d.setdefault(key,v) # 如果key包含在字典d中,则返回其值;否则,返回v并将(key,v)添加到字典d中
d.update(e) # 将e中的键-值对添加到字典d中;e可能是字典,也可能是键-值对序列
# 删除并返回字典某个键-值
color = {'red' : 1, 'blue' : 3}
print(color.popitem())
# ('blue', 3) - 定义:使用{}扩起,多个键用逗号隔开,只有键没有值
1
2
3
4
5# 列表去重
lst = [1,1,6,8,1,5,5,6,8,1,5]
s = set(lst)
print(s)
# {8, 1, 5, 6}
- 标题: Python数据结构
- 作者: Henry
- 创建于 : 2026-01-04 10:02:58
- 更新于 : 2026-01-04 14:45:14
- 链接: https://mybetterworks.github.io/2026/01/04/Python数据结构/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论