序列

列表、元组和字符串都是一种序列。

  • 都可以通过索引得到每一个元素
  • 默认索引值从0开始
  • 可以通过分片的方式来得到一个范围内元素的集合
  • 有很多共同的操作符(重复操作符、拼接操作符、成员关系操作符)

 

序列的一些常见BIF

  1. list,把一个可迭代对象转换为列表,参数为空时创建空列表。建议help(list)详细了解。

>>> a = list()
>>> a
[]

>>> b = '星垂平野阔,月涌大江流'
>>> b = list(b)
>>> b
['星', '垂', '平', '野', '阔', ',', '月', '涌', '大', '江', '流']

  

  2.tuple,把一个可迭代对象转换为元组,参数为空时创建空元组,同list。

>>> b = '无言独上高楼'
>>> tuple(b)
('无', '言', '独', '上', '高', '楼')

  

  3.str,把对象转换为字符串。

 

  4.len,返回对象的长度。

 

  5.max & min ,返回对象最大、最小值,注意对象的数据类型要是统一的。

 

  6.sum(iterable[,star=0]),返回序列iterable和可选参数的start的总和。

>>> a = [1,2,3,0]
>>> sum(a)
6
>>> sum(a,4)
10

  

  7.sorted,升序排列对象。

  

  8.reversed,将对象元素降序排列,生成一个对象。

>>> a = (0,3,1,4)
>>> tuple(reversed(a))
(4, 1, 3, 0)

  

  8. enumerate,生成由对象每个索引值和元素组成的对象。

>>> a
(0, 3, 1, 4)
>>> enumerate(a)
<enumerate object at 0x0000008DA3D2AAF8>
>>> list(enumerate(a))
[(0, 0), (1, 3), (2, 1), (3, 4)]
>>> tuple(enumerate(a))
((0, 0), (1, 3), (2, 1), (3, 4))

 

  9. zip,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象。若传入参数的长度不等,则返回list的长度和参数中长度最短的对象相同。

>>> a = [1,2,3]
>>> b = [4,5,6]
>>> c = [4,5,6,7,8]
>>> zipped = zip(a,b)
[(1, 4), (2, 5), (3, 6)]
>>> zip(a,c)
[(1, 4), (2, 5), (3, 6)]

  

posted @ 2016-01-18 22:27  林间  阅读(177)  评论(0编辑  收藏  举报