Python通用序列类型数据的操作

Python的序列,Python有6种内建的序列,包括:列表、元组、字符串、Unicode字符串、buffer对象和xrange对象。其中最为常用的是Python的列表和元组。

Python的序列
Python有6种内建的序列,包括:列表、元组、字符串、Unicode字符串、buffer对象和xrange对象。其中最为常用的是Python的列表和元组。

Python序列的应用
Python在操作一组数据时,通常是用序列来表示这组信息。(序列也可以包含其他序列)

Python还有一种叫做容器的数据结构。容器是包含其他对象的任意对象。序列(如元组和列表)和映射(比如字典)就是两类主要的容器。

序列的每个元素有自己的编号(元组可以作为字典的键名),而映射的每个元素则有一个自己的名字(键)。另外还有种容器类型既不是序列也不是映射,叫做集合。

通用的序列操作
所有序列类型的数据结构都可以进行某些特定的操作,如;索引 、分片 、加 、乘 和检查每个元素是否属于序列的成员(成员资格 )。

索引
序列的所有元素都有自己的编号,从0开始,通过编号访问即为索引。

  1. >>>indexing = ‘python’
  2. >>>indexing[1]
  3. ‘y’
  4. >>>indexing[-1]
  5. ‘n’

或者字符串直接索引

  1. >>>’python'[0]
  2. ‘p’

分片
使用索引是用来访问单个元素,而使用分片操作是用来访问一定范围内的元素。分片是通过冒号相隔的两个索引来实现。

  1. >>>string = ‘<a href=”http://chenpeng.info/”>zhizuzhefu</a>’
  2. >>>string[9:30]
  3. ‘http://chenpeng.info/’
  4. >>>num= [1,2,3,4,5,6]
  5. >>>num[3:6]
  6. [4, 5, 6]
  7. >>>num[-3:-1]
  8. [4, 5]
  9. >>>num[-3:]
  10. [4, 5, 6]
  11. >>>num[:]
  12. [1,2,3,4,5,6]

分片有个隐式的设置:步长。上面的步长都为1。

比如:

  1. >>>num= [1,2,3,4,5,6]
  2. >>>num[3:6:1] #这边是个隐藏的步长1
  3. [4, 5, 6]
  4. >>>num[3:6:2] #步长改为2
  5. [4, 6]

序列相加
通过加号来进行序列的连接操作。

  1. >>>[1,2]+[3,4]
  2. [1,2,3,4]
  3. >>>[1,2]+’python’
  4. TypeError: can only concatenate list (not “str”) to list
  5. #报错了,相同类型的序列才能进行连接操作。

乘法
用数字x乘以一个序列得到新的序列,新的序列为原来的序列重复x次。

  1. >>>[1] * 3
  2. [1, 1, 1]

成员资格 (检测元素是否属于序列的成员)
要检查一个值是否在序列中,可以使用in运算符。返回的是布尔值。

  1. >>>per = ‘python’
  2. >>>’py’ in per
  3. True

注:in是区分大小写的。

About 智足者富

http://chenpeng.info

发表评论

电子邮件地址不会被公开。 必填项已用*标注

您可以使用这些HTML标签和属性:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>