列表、元组和字符串都是一种序列。
- 都可以通过索引得到每一个元素
- 默认索引值从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)]