python数据结构编程_编程|python的数据结构

编程|python的数据结构

在我的文章里是没有写过python的,python这门语言这么流行,都进入高考了,如果再不会,以后不止是被小朋友淘汰,被时代淘汰都不觉得是危言耸听;本文就从python的数据结构说起;

1.列表

列表是一种可变序列数据类型。我们拆开来理解,“列”可以是一系列的数据,一系列的组合数据,各种类型的数据都可以;“表”你可以理解是一个表格,就是这些一系列的数据放在表格里,用一对方括号,把它括起来,在数据元素之间用逗号把它隔开就可以了,比如:

[1,2,3,4,5,6,7]

[5,2019,7,30]

["小杨","小云","小白","小黑"]

[5,[2,5,7],["a","b"]]

以上都是列表对象。

创建一个列表也非常简单就是把以上的列表对象赋值给列表名就可以了,或者使用列表函数list()进行创建;

A = ["小杨","小云","小白","小黑"]

C = [5,[2,5,7],["a","b"]]

还可以用列表推导式创建,比如range函数创建

D = [i for i in range(1,10)]

列表推导式是一种循环函数,语法格式是这样的:[forin];

通过前面的定义,我们知道列表是一个有序的序列,就可与通过用索引访问列表中的数据;语法格式:[]

比如访问前面的列表A中的数据;

A[1]

"小云" #就会输出结果

A[-1]

"小黑" #输出结果

如果一个列表中的列表元素也是有列表构成的,那就构成了类似矩阵的二维结构,访问二维列表的语法格式:[][]

比如访问前面的列表C中的数据:

C[1][1]

b #输出结果

如果想在列表中修改一个数据怎么办呢,用到语法格式:

[索引]=

其中列表名是一个已经存在的列表,索引为改列表的索引序号,值可以是任意的值;

比如我要修改A中的“小黑”,改成“小羊”,

A[-1]="小羊"

再次访问A列表时,已经变成:

"小杨","小云","小白","小羊" #输出结果

同样,我们了解列表的语法格式了,那添加删除都是一样的,只是多了个函数:

添加列表的语法格式:

.append()#直接在后面添加

.insert(,)#在相应的位置上插入

.remove() #想要删除那个数据,直接删除就可以

除了以上的列表增改删查的操作之外,还有其它的操作符合函数,比如max(list)、min(list),sum(list)……

2.元组

元组和列表类似,但元组的元素是不可以改变的,元组一旦创建,不可以修改或添加删除其中的元素,跟列表不一样的符号是,元组创建是使用一对小括号,也是用逗号分隔元组之间的元素,里面的元素跟列表一样,可以是基本的数据类型,也可以是组合数据类型等;

我们还是用前面的数据,也可以使用tuple()函数进行创建;先创建一个元组看看,

F = ("小杨","小云",“小白”,“小黑”)

这就是个元组,跟列表就差别就在小括号,而且元组可以省掉小括号,跟列表一样,元素也可以用推导式生成,不同的地方在于不用方括号,用小括号,语法格式是这样的:

(forin);

for x in range(b) 这种结构是生成器推导式,它和列表推导式的区别是只能一次访问,而且占用内存很小,生成器是一种算法,列表推导式生成元素可以存放在内存里;

访问元组的方式跟列表一样,就是不能增改删数据;

3.字典

字典是一种映射型的组合数据结构,由键值组成。一个字典结构中,一个键对应一个值,但是多个键可以对应相同的值;

它的组成规则是,将键值放在一对大括号之间,并使用逗号作为分隔,每个键值对内部用冒号分隔,字典的创建是由键值对组成的,外面是大括号;也可以通过dict()函数来创建,如果是列表,那必须是成键值对的形式的才可以;其它的方式,也可以通过推导式创建字典;

dict1 = {1:"小杨",2:"小云",3:"小白",4:"小云"}

dict2 = dict([[a:"小杨"],[b:"小云"],[c:"小白"],[d:"小云"]])

访问字典就跟列表和元素不一样,因为字典是一种映射关系,所以,只要找到键就可以访问到值

比如:

dict1[1]

"小云" #输出结果

字典对象也提供了一个get()方法通过键访问对应的值;当键存在时,返回该键对应的值,而键不存在时,返回指定的值;

比如:

dict1(5,"没在")

“没在” #输出结果是“没在”,因为5的键是不存在的,所以返回指定的值;

另外字典和列表一样,都可以进行增改删查;通过赋值语句就可以添加元素,或者用setdefault()函数向字典添加元素;

合并元素用update(),把前面的dict1和dict2合并,那么可以用dict1.update(dict2);修改元素的方法是指定值赋予修改;

删除元素就用del(),pop(),popitem(),clear()函数实现;当然它有列表的增改删查操作,那也会有相应的其它常用操作,跟列表类似的几乎都有;

4.集合

集合是无序的可变序列,跟字典一样,也是放在一对大括号之间,元素之间用逗号分隔开,而且不重复,不能用可变的数据类型,如列表、字典都不可以用。

一般通过set()创建;添加元素用add(),删除用remove(),pop(),discard(),clear()函数,集合只能用集合的符合交集、并集等;

python就是打好基础,以后进行定义函数,运用其它的函数库的时候,才容易,尤其是用到数据分析的库;当然,你也可以从一个问题开始,但是python的基础很容易入门,花不了多长时间就可以,为什么不从容易的开始呢?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值