Python数据结构之序列

 一、定义:

        Python中最基本的数据结构是序列(sequence)。序列的每个元素被分配一个序号,叫做元素的位置,也称为索引,且规定第一个索引是0,第二个是1,依次类推。在Python中包含了6种內建的序列:字符串、Unicode字符串、列表、元祖、buffer对象和xrange对象。

二、序列的通用操作:

1、索引(访问单个元素)

         序列中所有元素都有编号,第一个序列规定为0,第二个为1,依次类推增加。索引的常用作用是获取元素。正数索引从左边开始计数,负数索引则从右边开始计数,且规定最右边那个元素的索引编号是-1。

>>> name = 'xiaoming'
>>> name[0]
'x'
>>> name[2]
'a'
>>> name[-1]
'g'
2、分片(访问多个元素)

        分片用来获取多个元素,通过“:”来实现。第1个索引是要提取的第一个元素的编号,但要注意,最后的索引不是最后那个元素的索引,而是最后那个元素的索引+1。如果省略头或尾,则认为从头开始或到结尾结束。

        分片还有第三个参数,就是步长。正数从左边开始提取元素,负数则从右边开始提取元素,但注意:当你用负数做步长时,必须让开始索引大于结束索引,否则取到空值。

>>> name[0:1]
'x'
>>> name[2:6]
'aomi'
>>> name[-3:-1]
'in'
>>> #上面无法获得最后一个元素‘g',需要提供最后一个元素的下一个元素的索引做边界,但可以省略最后元素的索引来实现:
>>> name[-3:]
'ing'
>>> name[:3]
'xia'
>>> #整个序列:
>>> name[:]
'xiaoming'
>>> #增加步长:
>>> name[0:6:2]
'xam'
>>> name[9:0:-2]
'gioi'
3、相加

        通过“+”,可以将两种相同类型的序列进行连接。

>>> sex = 'male'
>>> s = name + 'is' + sex
>>> print s
xiaomingismale
4、相乘

        通过“*”来实现相乘。

        None是Pythond的內建值,它的确切含义是这里什么也没有,可以用None来初始化指定长度的空列表等。

>>> seq = [None] * 8
>>> print seq
[None, None, None, None, None, None, None, None]
5、成员资格

        通过in运算符实现。如果返回True则存在,如果返回False则不存在。

>>> DB = [['xiaoming','123'],['xiaohong','456'],['liqiang','789']]
>>> username = raw_input('Use
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值