Python游戏开发教程八:Pygame常用数据结构

文章目录 [ 隐藏 ]

本文目标

通过本文的学习,我们熟悉pygame游戏里面常用的一些数据结构: 数据,列表,元组,队列,栈。

Pygame常用数据结构

一、数组与列表

数组可以理解为简化的列表。像我们之前使用的pygame.sprite.Group这样的精灵组,也是一个列表。列表的元素是可变的,它具有添加、删除、搜索、排序等多种方法。

1、一维列表

可以在创建列表的时候一次性的定义所有元素,也可以以后再向列表里面添加:

修改元素

可以通过索引号来获取列表中的任何元素的数据,也可以通过引用索引编号来修改元素值(索引编号是从0开始的):

添加元素:

ppend方法把一个元素添加到列表中:

也可以使用insert(index,value)方法把一个元素插入到列表的中间,index代表索引参数,value代表值。

对元素统计:

如果一个列表中有重复的元素,可以使用count()对其计数,其实就是统计一个列表中某个元素出现的次数:

搜索元素:

可以使用index()方法来搜索一个元素在列表中第一次出现的位置:

删除元素:

使用remove()方法可以删除列表中的一个元素。

列表元素反转:

使用reverse()方法可以将整个列表翻转:

列表排序:

可以使用sort方法对列表中元素进行排序(默认是升序排列):

2.栈式列表

栈使用后进先出的方法来管理元素。pop方法可以弹出栈顶的元素(列表中的最后一项),append用来将一个元素压入栈中:

3.队列式列表:

队列使用的是先进先出的模式管理元素,python中有一个名为queue的模块实现了队列的功能,为了便于说明我们这里使用一个列表来代替队列:

二、元组

元组是一种和列表类似的数据类型,但是元组的元素是只读的,不可更改的。一旦初始化了,里面的元素就不可以再进行更改了。元组的比列表的优点就是元组的速度更快。

1.初始化一个元组

创建一个元组的过程叫做打包:

如果此时你尝试修改元组中的元素的话,程序会报错。

2.解包元组

读取一个元素的过程叫做解包

3.搜索元素

可以使用index方法来返回一个元素第一次出现的位置。也可以使用in()方法来搜索一个元素是否在元组中:

以上就是一些在pygame游戏开发中常用的数据结构,很简单,接触过python的肯定有了解的。

未经允许不得转载:Python在线学习 » Python游戏开发教程八:Pygame常用数据结构

赞 (0)

来吐槽吧 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址