Python数据结构 - 列表和元组

1. 数据结构

        数据结构是通过某种方式组织在一起的数据元素的集合,这些数据元素可以是数字或者字符,甚至可以是其他数据结构。

        Python中最基本的数据结构是序列(sequence),序列中的每个元素被分配一个序号——即索引(index),标识元素的位置(element location),从0开始,0,1,2,3,...,n(-1表示n,-2表示n-1,so on)

2. Python内建序列

共6种:列表(list)、元组(tuple)、字符串(string)、Unicode字符串(unicode string)、buffer对象、xrange对象

本篇教程主要介绍最常用的两种类型:列表(list)和元组(tuple)

2.1 list和tuple的主要区别

list的元素可以修改,tuple则不能

2.2 通用序列操作

2.2.1 索引(indexing)

直接通过元素序号访问

例:l是一个长度为3的list,则可访问元素序号范围:[-3,2]

2.2.2 分片(slicing)

有的教程称为切片,与使用索引访问单个元素类似,通过分片操作来访问一定范围内的元素,通过冒号(英文:)隔开的两个索引实现,含头不含尾

例:l是一个长度为10的list,则可访问元素序号范围:[-10,9]

a. 常规操作

b. 省略冒号两旁的索引,[:n](左开右闭,从0开始)、[n:](左闭右开,到最后一个序号结束)、[:](全部)

 c. 含负数序号,[-a:b]当负序号所指的元素在正序号所指的元素之后,则返回空序列,[-n:],[:-n]同上

 d. 指定步长的分片,默认步长为1,形式[from:to:step],step为负数时,则是从序列的尾部开始向左提取元素,直到第一个元素

 2.2.3 相加(adding)

加运算符使用在序列之间,则表示序列之间的连接,仅同类型的序列才能进行连接操作

 2.2.4 乘法(multiplying)

用数字x乘以一个序列会生成新的序列,在新的序列中,原来的序列将会被重复x次

2.2.5 成员资格

通过in运算符,检查一个值是否在序列中存在,返回:True - 存在,False - 不存在

2.2.6 长度、最小值和最大值

len、min、max

2.3 列表 list

list函数

将字符串转换为字符列表,再通过''.join(list)转换成字符串,list函数的输入也可以是[1,2,3]、(1,2,3),返回的是列表类型

基本操作

元素赋值、删除元素、分片赋值、删除分片

列表的方法

append(追加新对象)

count(统计元素在列表中出现的次数)

extend(追加另一个序列的多个值)

index(获取第一个匹配项的序号)

insert(将对象插入到列表中)

pop(移除列表中的一个元素,不指定序号则为最后一个)

remove(移除列表中某个值的第一个匹配项)

reverse(将列表中的元素反向存放)

sort(在原位置对列表进行排序)

2.4 元组 tuple

tuple函数

基本操作

创建元组

访问元组元素

Congratulations

        Python的两大常用序列:列表和元组的介绍到这里就结束了,如何灵活运用还是靠理解和练习,后面的教程将给各位带来Python基础使用字符串教程,快来跟随作者一起领略Python编程之美吧 ~ 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

刺客码

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值