• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

Python序列之list和tuple常用方法以及注意事项

python 搞代码 4年前 (2022-01-09) 49次浏览 已收录 0个评论

sequence 序列

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

我们之前所说的基本数据类型,都可以作为序列的对象。对象还可以是另一个序列。序列有两种:list (表) 和 tuple(元组) 。
list和tuple的主要区别在于,一旦建立,tuple的各个元素不可再变更,而list的各个元素可以再变更。

List

获得list元素的个数:

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

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

<br />>>> lst[0]<br />'更新慢'<br />>>> lst[1]<br />'python'<br />>>> lst[2]<br />5.44<br />>>> lst[3]<br />False<br />>>> lst[4]<br />Traceback (most recent call last):<br />  File "", line 1, in <br />    lst[4]<br />IndexError: list index out of range<br />

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

<br />>>> lst[-1]<br />False<br />>>> lst[-2]<br />5.44<br />>>> lst[-3]<br />'python'<br />>>> lst[-4]<br />'更新慢'<br />>>> lst[-5]<br />Traceback (most recent call last):<br />  File "", line 1, in <br />    lst[-5]<br />IndexError: list index out of range<br />

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

<br />>>> lst.append('加我一个')<br />>>> lst<br />['更新慢', 'python', 5.44, False, '加我一个']<br />

本文来源gao($daima.com搞@代@#码(网一次追加多个元素:

<br />>>> lst.extend(['A','B','C'])<br />>>> lst<br />['更新慢', 'python', 5.44, False, '加我一个', 'A', 'B', 'C']<br />

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

<br />>>> lst.pop()<br />'C'<br />>>> lst<br />['更新慢', 'python', 5.44, False, '加我一个', 'A', 'B']<br />

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

<br />>>> lst.pop(0)<br />'更新慢'<br />>>> lst<br />['python', 5.44, False, '加我一个', 'A']<br />

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

<br />>>> lst[-1]='100'<br />>>> lst<br />['python', 5.44, False, '加我一个', '100']<br />

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

<br />>>> lst.append(lst1)<br />>>> lst<br />['python', 5.44, False, '加我一个', '100', ['666', 'QWER']]<br />>>> len(lst)<br />6<br />

Tuple

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

<br />>>> str='该睡觉了,晚安!'<br />>>> print (str[:7])<br />该睡觉了,晚安<br />

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

<br />>>> tuple=('1','2','3')<br />>>> tuple[0]=6<br />Traceback (most recent call last):<br />  File "", line 1, in <br />    tuple[0]=6<br />TypeError: 'tuple' object does not support item assignment<br />

定义一个空tuple:

<br />>>> tuple1=()<br />>>> tuple1<br />()<br />

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

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

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

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

所以尽量避免这种套用。

当日小结

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


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Python序列之list和tuple常用方法以及注意事项

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址