数据结构

python有三种常用数据类型,分别是列表、字典和元组。

一、列表(list)

列表是一种有序的集合,可以随时添加和删除其中的元素。

1. 创建列表

list = [] #定义一个空列表
list2 = [“test”,2,3] #定义一个列表,并进行赋值。
创建列表是把多个值通过逗号分隔,并使用方括号括起来,然后赋值给列表变量。

2. 列表下标(索引)与访问列表值

定义列表后,可以使用列表下标访问,下标从0开始。
比如想访问list2中的test和2这两个元素,访问方式如下:
list2[0] #访问元素test
list2[1] #访问元素2

3. 列表下标还有一些特殊的使用方式,如下

Python表达式结果描述
L[2]test读取第三个元素
L[-2]2从右侧开始读取倒数第二个元素
L[1:][2,3]输出从第二个元素开始的所有元素

4. 更新列表元素

使用列表下标更新某个元素,和普通赋值一样
比如想更新list2列表的第三个元素
list2[2] = 3 #列表元素从0开始,所以这里列表下标是2

5. 删除列表元素

删除列表的某个值
del list2[2]

6. 列表的嵌套

列表中的元素也可以是列表,比如:
list = [1,[1,2,],3]
访问列表中嵌套列表的值
list[1][1]
结果为2

7. 列表常用函数

计算列表元素个数:len(list)
返回列表元素的最大值:max(list)
返回列表元素的最小值:min(list)
将元组转换为列表:list(tuple)

示例:  
list = [1,2,4]  
len(list) 结果为  3  
max(list)结果为  4  
min(list)结果为   1  

8. 列表常用方法

list.append(obj)
在列表末尾添加新的对象
list.count(obj)
统计某个元素在列表中出现的次数
list.extend(seq)
在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
list.index(obj)
从列表中找出某个值第一个匹配项的索引位置
list.insert(index, obj)
将对象插入列表
list.pop([index=-1])
移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
list.remove(obj)
移除列表中某个值的第一个匹配项
list.reverse()
反向列表中元素
list.sort(cmp=None, key=None, reverse=False)
对原列表进行排序
list.clear()
清空列表
list.copy()
复制列表

9. 列表常用表达式

列表的组合
表达式:
[1,2,3] + [4,5,6]
结果
[1,2,3,4,5,6]

判断某个元素是否在某个列表中
表达式:
3 in [1,2,3]
结果
True

迭代:
表达式
for x in [1, 2, 3]: print(x, end=” “)
结果
1 2 3

二、元组(tuple)

元组和列表类似,区别在于元组创建以后,就不能在修改

1. 创建元组

tuple = (1,2,3) #创建元组,元组使用小括号括起元素。

2. 访问元组元素

tuple[0]
结果为
1

3. 元组的常用操作

元组的常用操作方式和列表一样,参考列表即可。

4. 元组的常用方法

len() 计算长度
max() 求元组的最大值
min() 求元组的最小值
tuple(list) 将列表转换为元组

三、字典

字典是一种由键、值存储数据的数据类型。字典可以存储任意类型的数据对象。字典在其他编程语言中称为map

1. 为什么使用字典

字典的查询使用的是key=>value2的方式,这样可以根据key,快速的找到对应的值。
字典的key是唯一的,值不是。
字典的key和value使用:分割,整个字典包含在{}.

2. 字典的初始化

test = {} #定义一个空字典
test2 = {‘a’:1,’b’:2,’c’:3} #定义一个字典,里面有a、b、c三个key,分别对应1、2、3这三个值。

3. 访问字典的值

字典值的访问通过字典名、key、value访问
访问格式:
dict[‘key’]
输出结果为
1

示例程序:

#!/usr/bin/env python3   

test = {'a':1,'b':2,'c':3}  
print(test['a'])  

4. 更新字典某个key的值

dict[‘key’] = value
示例:
test2 = {‘a’:1,’b’:2,’c’:3}
dict[‘a’] = 4
现在字典中key为a的值为4

5. 增加字典数据

直接给字典中不存在的key赋值一个value,即为字典增加数据。

6. 字典常用方法

dict.keys() 获取字典的所有key
radiansdict.clear() 删除字典内所有元素
radiansdict.copy() 返回一个字典的浅复制
radiansdict.fromkeys() 创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值
radiansdict.get(key, default=None) 返回指定键的值,如果值不在字典中返回default值
key in dict 如果键在字典dict里返回true,否则返回false
radiansdict.items() 以列表返回可遍历的(键, 值) 元组数组
radiansdict.keys() 返回一个迭代器,可以使用 list() 来转换为列表
radiansdict.setdefault(key, default=None) 和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default
radiansdict.update(dict2) 把字典dict2的键/值对更新到dict里
radiansdict.values() 返回一个迭代器,可以使用 list() 来转换为列表
pop(key[,default]) 删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值。
popitem() 随机返回并删除字典中的一对键和值(一般删除末尾对)。

四、参考文章

菜鸟教程
del用法

Previous Post

面向对象编程

Next Post

python模块

Related Posts