序列总结

sequence 序列

序列引用

通过s[<int>]实现, int为下标。注意下标是从0开始。

 1  >>> s1 = (2, 1.3, 'love', 5.6, 9, 12, False)    #s1为tuple
 2  >>> s2 = [True, 5, 'smile']                     #s2为list               
 3  >>> print (s1,type(s1))
 4  ((2, 1.3, 'love', 5.6, 9, 12, False), <type 'tuple'>)   #注意输出的s1也带有()
 5  >>> print (s2,type(s2))
 6  ([True, 5, 'smile'], <type 'list'>)                     #s2输出带有[]
 7  >>> print (s1[0])         #引用为[]固定格式
 8  2
 9  >>> print(s1[2])
10  love
11  >>> s3 = [1,[3,4,5]]
12  >>> print (s3[1])         #list的引用
13  [3, 4, 5]

llist-表变更

 1 >>> s2 = [True, 5, 'smile']
 2 >>> s2[2]=78           #list可变更
 3 >>> print (s2)
 4 [True, 5, 78]
 5 >>> s1 = (2, 1.3, 'love')
 6 >>> s1[2]=78           #tuple不可变更
 7 
 8 Traceback (most recent call last):
 9   File "<pyshell#70>", line 1, in <module>
10     s1[2]=78
11 TypeError: 'tuple' object does not support item assignment

引用的延伸

基本样式[下限:上限:步长],包含下限但不包含上限

 1  >>> s1 = (2, 1.3, 'love', 5.6, 9, 12, False)
 2  >>> print (s1[2])        
 3  love 
 4  >>> print (s1[:1])      #从下标0开始取数,不包含s1[1],即1.3
 5  (2,)
 6  >>> print (s1[1:])      #从下标1开始取数,直至末尾
 7  (1.3, 'love', 5.6, 9, 12, False)
 8  >>> print (s1[1:5])     #包含下标1,不包含下标5,即12
 9  (1.3, 'love', 5.6, 9)
10  >>> print (s1[1:5:2])   #增加了步长
11  (1.3, 5.6) 
12  >>> print (s1[1:5:-1])  #-1是个特殊的取法,下限>上限
13  ()
14  >>> print (s1[5:1:-1])  #不包含上限,与s1[1:5]结果不同
15  (12, 9, 5.6, 'love')
16  >>> print(s1[-1])       #-1即为末尾,末尾非0开始
17  False
18  >>> print(s1[-3])       #-3为反向下标3
19  9
20  >>> print (s1[:-1])
21  (2, 1.3, 'love', 5.6, 9, 12)    #取不到末尾
22  >>> print (s1[0:-1])
23  (2, 1.3, 'love', 5.6, 9, 12)

小结:

1.s1[1:]未定义上限,可以取到末尾。

2.步长为-1时为反向取数,且下限>上限,否则输出结果为()。

3.取序列最后一个元素的写法有两种,一种为s1[最后一个元素下标];另一种为s1[-1]

4.反向取数时,s1[-3]即为反向第三个元素。

取全部的写法。

1 >>> print (s1[:])
2 (2, 1.3, 'love', 5.6, 9, 12, False)
3 >>> print (s1[0:])
4 (2, 1.3, 'love', 5.6, 9, 12, False)
5 >>> print (s1)
6 (2, 1.3, 'love', 5.6, 9, 12, False)

字符串为元组

是一种特殊的tuple-元组。

1 >>> str = 'abcdef'
2 >>> print(str[2:4])  #引用的写法
3 cd
原文地址:https://www.cnblogs.com/shengyin/p/11229741.html