【Python⑤】python序列---list和tuple

王朝学院·作者佚名  2016-08-27
窄屏简体版  字體: 小  |  中  |  大  |  超大  

sequence 序列

sequence(序列)是一组有顺序的对象的集合。序列可以包含一个或多个元素,也可以没有任何元素。

我们之前所说的基本数据类型,都可以作为序列的对象。对象还可以是另一个序列。序列有两种:list (表) 和 tuple(元组) 。

list和tuple的主要区别在于,一旦建立,tuple的各个元素不可再变更,而list的各个元素可以再变更。

List获得list元素的个数:

>>> lst=['更新慢','python',5.44,False]>>>len(lst)4

引用访问时索引是从0开始,注意不要越界:

>>>lst[0]'更新慢'>>> lst[1]'python'>>> lst[2]5.44

>>> lst[3]

False>>> lst[4]

Traceback (most recent call last):

File"<pyshell#30>", line 1,in<module>lst[4]

IndexError: list index out of range

用-1做索引,直接获取最后一个元素:

>>> lst[-1]

False>>> lst[-2]5.44

>>> lst[-3]'python'>>> lst[-4]'更新慢'>>> lst[-5]

Traceback (most recent call last):

File"<pyshell#35>", line 1,in<module>lst[-5]

IndexError: list index out of range

因为list是一个可变的有序表,所以,可以往list末尾追加元素:

>>> lst.append('加我一个')>>>lst

['更新慢','python', 5.44, False,'加我一个']

一次追加多个元素:

>>> lst.extend(['A','B','C'])>>>lst

['更新慢','python', 5.44, False,'加我一个','A','B','C']

要删除list末尾的元素,用pop()方法:

>>>lst.pop()'C'>>>lst

['更新慢','python', 5.44, False,'加我一个','A','B']

删除指定位置的元素,用pop(i)方法,其中i是索引位置:

>>>lst.pop(0)'更新慢'>>>lst

['python', 5.44, False,'加我一个','A']

list元素替换,可以直接赋值给对应的索引位置:

>>> lst[-1]='100'>>>lst

['python', 5.44, False,'加我一个','100']

list元素也可以是另一个list,插入的那个list只算一个元素:

>>>lst.append(lst1)>>>lst

['python', 5.44, False,'加我一个','100', ['666','QWER']]>>>len(lst)6

TupleTuple一旦初始化就不能修改。字符串是一种特殊的元素,因此可以执行元组的相关操作。

>>> str='该睡觉了,晚安!'>>>PRint(str[:7])

该睡觉了,晚安

不可变的tuple意义就在于因为不可变,所以代码更安全。如果可能,能用tuple就尽量用tuple。

>>> tuple=('1','2','3')>>> tuple[0]=6Traceback (most recent call last):

File"<pyshell#62>", line 1,in<module>tuple[0]=6TypeError:'tuple'object doesnotsupport item assignment

定义一个空tuple:

>>> tuple1=()>>>tuple1

()

注意,要定义一个只有1个元素的tuple:

>>> tuple2=(666,)>>>tuple2

(666,)#正确的>>> tuple3=(666)>>>tuple3666#错误的,只定义了666这个数

注意:Tuple所谓的“不变”是说,tuple的每个元素,指向永远不变。

>>> l=['CCTV-5','HI']>>> tuple4=('UFO','HACK',l)>>>tuple4

('UFO','HACK', ['CCTV-5','HI'])>>> l[1]='我先变一下'>>>tuple4

('UFO','HACK', ['CCTV-5','我先变一下'])

所以尽量避免这种套用。

当日小结掌握List和Tuple的常用方法以及注意事项。

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航