venus-1027

最基本的数据结构是序列,序列中每个元素被分配一个序号-元素的位置,也称索引。第一个索引为0,最后一个元素索引为-1。

python中包含6种内建的序列:元组、列表、字符串、unicode字符串、buffer对象和xrange对象。元组与列表的区别:列表可以对其元素进行修改,元组不能改动其元素。

序列的通常操作:索引、分片、加、乘、成员资格(in)、迭代。python中关于序列的内建函数:计算序列长度、找出最大元素和最小元素。

1、索引

1 >>> greeting = \'hello\'
2 >>> greeting[0]
3 \'h\'
4 >>> greeting[-1]
5 \'o\'
6 >>> \'hello\'[0]
7 \'h\'

2、分片

 1 >>> numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
 2 >>> numbers[3:6]
 3 [4, 5, 6]
 4 >>> numbers[-3:]
 5 [8, 9, 0]
 6 >>> numbers[:3]
 7 [1, 2, 3]
 8 >>> numbers[:]
 9 [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
10 >>> numbers[0:10:2]
11 [1, 3, 5, 7, 9]
12 >>> numbers[::4]
13 [1, 5, 9]
14 >>> numbers[8:3:-1]
15 [9, 8, 7, 6, 5]

3、序列相加

#相同类型的序列才能进行连接操作

4、乘法

#初始化一个长度为10的列表
>>> sequence = [None]*10
>>> sequence
[None, None, None, None, None, None, None, None, None, None]

5、成员资格

>>> permission = \'sdnk\'
>>> \'dn\' in permission
True

6、长度、最小值及最大值

#len、min、max

列表的内建函数:

7、列表的元素修改-del、split

>>> names = [\'Alice\',\'Bob\',\'Vera\',\'Amy\',\'Beth\',\'2\',\'23\']
>>> names[1] = \'venus\'
>>> names
[\'Alice\', \'venus\', \'Vera\', \'Amy\', \'Beth\', \'2\', \'23\']
>>> del names[1]
>>> names
[\'Alice\', \'Vera\', \'Amy\', \'Beth\', \'2\', \'23\']
>>> names = list(\'perl\')
>>> names
[\'p\', \'e\', \'r\', \'l\']
>>> names[2] = \'xliu vera\'
>>> names
[\'p\', \'e\', \'xliu vera\', \'l\']
>>> names[2] = (\'l\',\'e\')
>>> names
[\'p\', \'e\', (\'l\', \'e\'), \'l\']
>>> number = [1,3,5]
>>> number[1:1] = [6,8,7]
>>> number
[1, 6, 8, 7, 3, 5]
>>> number[1:4] = []
>>> number
[1, 3, 5]

列表方法:方法与对象联系紧密,对象可以是列表,数字,字符串或者其他类型。格式:对象.方法(参数)

8、列表-append、count、extend、index、insert、pop

>>> lst = [1,2,3]
>>> lst.append(4)
>>> lst
[1, 2, 3, 4]
>>> lst.count(2) 
>>> lst1 = [6,7,8] >>> lst.extend(lst1) >>> lst [1, 2, 3, 4, 6, 7, 8] >>> lst.index(3) 2 >>> lst.insert(3,\'Bob\') #格式:操作对象.insert(位置,插入内容) >>> lst [1, 2, 3, \'Bob\', 4, 6, 7, 8] >>> lst.pop() #默认的情况下,删除列表的最后一个元素并返回值 8 >>> lst [1, 2, 3, \'Bob\', 4, 6, 7] >>> lst.pop(0) #移除索引为0的元素并返回其值 1 >>> lst [2, 3, \'Bob\', 4, 6, 7]
>>> lst.remove(\'Bob\')
>>> lst
[2, 3, 4, 6, 7]
>>> lst.reverse()
>>> lst
[7, 6, 4, 3, 2]

9、列表-sort

>>> x = [1,3,5,12,9,11,0,4]
>>> y = x[:] #调用x[:]得到的是每个元素的分片,有效的复制了列表x
>>> y.sort()
>>> x
[1, 3, 5, 12, 9, 11, 0, 4]
>>> y
[0, 1, 3, 4, 5, 9, 11, 12]


>>> y = x #x,y同指一个列表,任意改变其中之一另一个也会改变
>>> y.sort()
>>> x
[0, 1, 3, 4, 5, 9, 11, 12]
>>> y
[0, 1, 3, 4, 5, 9, 11, 12]

#获取一个已经排序好的副本
>>> x = [1,4,3,6,2,7,3]
>>> y = sorted(x)
>>> x
[1, 4, 3, 6, 2, 7, 3]
>>> y
[1, 2, 3, 3, 4, 6, 7]

#以上都是按照默认的排序方式

>>> x = [\'hi\',\'we\',\'are\',\'family\',\'2\']
>>> x.sort(key = len) #按照字符的长度排序
>>> x
[\'2\', \'hi\', \'we\', \'are\', \'family\']
>>> x.sort(reverse = True) #反向排序
>>> x
[\'we\', \'hi\', \'family\', \'are\', \'2\']

10、元组:基本的元组操作除了创建元组及访问元组外没有其他的操作

>>> 1,2,3
(1, 2, 3)
>>> () #创建空元组
()
>>> 42, #创建只有一个元素的元祖
(42,)
>>> (42,)
(42,)
>>> tuple([1,2,3]) #tuple 将序列转化为元组,功能与list相近
(1, 2, 3)

 

 


 

 

 

 

 

分类:

技术点:

相关文章: