python中几种常见数据结构的使用
# python中几种常见数据结构及其使用
# 列表(list)
列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。
特点:
列表的数据项不需要具有相同的类型
# 使用列表
- 定义列表
a=[]
1
- 删除列表元素
#按值删除
a.remove(x)
#按索引删除
del a[i]
1
2
3
4
5
2
3
4
5
- 遍历列表
for i in a:
print(i)
1
2
2
# 常用方法
方法 | 描述 |
---|---|
list.append(x) | 列表末尾添加一个元素x |
list.insert(i,x) | 列表指定位置插入一个元素x |
list.remove(x) | 列表中删除第一个值为x的元素 |
list.pop(i) | 删除列表中指定位置的元素,并返回删除的元素 |
list.clear() | 删除列表所有元素 |
list.count(x) | 返回列表中元素x出现的次数 |
list.reverse() | 翻转列表元素 |
# 元组
- 定义:
元组由多个用逗号隔开的值组成
- 特点:
(1)元组中的元素不可变;
# 使用元组
- 定义元组
#空元组定义
e= ()
#非空元组定义
e=123,'hello','world','aaaaa'
1
2
3
4
5
2
3
4
5
- 访问元组
tup1 = ('physics', 'chemistry', 1997, 2000)
tup2 = (1, 2, 3, 4, 5, 6, 7 )
print "tup1[0]: ", tup1[0]
print "tup2[1:5]: ", tup2[1:5]
1
2
3
4
5
6
7
2
3
4
5
6
7
- 修改元组
元组中的元素值是不允许修改的,但我们可以对元组进行连接组合
# 定义
tup1 = (12, 34.56)
tup2 = ('abc', 'xyz')
# 以下修改元组元素操作是非法的。
# tup1[0] = 100
# 创建一个新的元组
tup3 = tup1 + tup2
print tup3
# 输出
(12, 34.56, 'abc', 'xyz')
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
- 删除元组
元组中的元素值是不允许删除的,但我们可以使用del语句来删除整个元组
tup = ('physics', 'chemistry', 1997, 2000)
print tup
del tup
print "After deleting tup : "
print tup
# 执行后,元组被删除,输出会报错
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
# 常见方法
方法 | 描述 |
---|---|
len(e) | 取得元组元素个数 |
# 集合
- 定义:
集合是由不重复元素组成的无序容器。
特点:
(1)元素不重复;
(2)集合对象支持合集、交集、差集、对称差分等数学运算
# 使用集合
- 定义集合
#空集合
a=set()
#非空集合
a={'apple','banana','orange'}
1
2
3
4
5
6
2
3
4
5
6
# 字典
- 定义:
字典即为包含‘键值对’的集合,键必须是唯一的
# 使用字典
- 定义字典
#示例
a={'name':'bb','age':'16'}
a['score']=90
1
2
3
4
5
2
3
4
5
- 取得字典键
print(list(a))
1
- 循环同时取得键值
for k,v in a.items():
print(k,v)
1
2
3
2
3
# 常用方法
方法 | 描述 |
---|---|
dict.keys() | 以列表返回一个字典所有的键 |
dict.values() | 以列表返回字典中的所有值 |
dict.get(key, default=None) | 返回指定键的值,如果值不在字典中返回default值 |
dict.has_key(key) | 如果键在字典dict里返回true,否则返回false |