python元组索引_Python 元组、列表

python元组索引_Python 元组、列表Python 中 最常用的数据结构就是序列了 序列有以下几种 元组 列表 字符串等 注 代码都是在 IDE 中编辑的 没有用交互式环境 一 元组 tuple 元组其实有点类似 C 中的数组 即一旦指定了内容 那么这个元组就固定下来不能变了 不过并不是绝对不能改变 如果一个元组成员是一个列表 那么这个列表的修改操作是允许的 另外 Python 是动态语言 因此元组中各个成员并不需要是同一种类型 a 1

Python中,最常用的数据结构就是序列了。序列有以下几种:元组,列表,字符串等。注:代码都是在IDE中编辑的,没有用交互式环境。

一、元组(tuple)

元组其实有点类似C++中的数组,即一旦指定了内容,那么这个元组就固定下来不能变了。不过并不是绝对不能改变,如果一个元组成员是一个列表,那么这个列表的修改操作是允许的。另外,Python是动态语言,因此元组中各个成员并不需要是同一种类型:

a = (1, 3, 5, [7, 9])#a[1] = 11 错误,不允许修改元组的成员

a[3].append(11)#正确print a

(1, 3, 5, [7, 9, 11])

大部分时候,列表可以代替元组,不过,元组可以作为字典中的key,而列表不可以;另外,元组是许多内建函数的返回类型

二、列表(list)

列表与元组非常相似,他们支持的操作也有很多相似的地方,具体功能我们在一部分再介绍。列表用[ ]来表示,不同之处在于,列表可以随意修改元素以及添加元素:

a = [1, 3, 5, [7, 9]]

a[1] = 111a[3].append(11)print a

[1, 111, 5, [7, 9, 11]]

三、序列支持的操作

1、索引

类似于C++中的数组和std::list,序列都是线性结构,支持使用下标来进行索引:

a = [1, 3, 5]

b = (2, 4 ,6)

c = ‘this is a string’

print a[1], b[1], c[1], c[-1]

3 4 h g

同其他语言一样,下标是从0开始计的,即第一个元素的索引为0。此外,索引可以为负数,即从右侧开始计算。

2、分片

分片操作支持每次访问一定区间的元素,以及指定访问的步长:

a = [1, 3, 5, 7, 9]

b= (2, 4, 6, 8, 10)print a[1:3], b[0:4:2] #注意,左闭右开区间

同样,分片操作也可以是负数,不过要注意步长是否匹配。

3、加法和乘法

加法会连接两个类型相同的序列(不能是元组),乘法会赋值N次该序列,并返回一个新的序列:

a = [1, 3, 5, 7, 9]

b= [2, 4, 6, 8, 10]print a + b, ‘\n’, a * 2[1, 3, 5, 7, 9, 2, 4, 6, 8, 10]

[1, 3, 5, 7, 9, 1, 3, 5, 7, 9]

4、长度、最大最小值

len()函数返回元素的个数,max()和min()函数返回。对于长度,他们都调用类内定义的__len__方法。

四、列表支持的操作

简单点说,列表主要支持的就是添加/删除元素,以及索引、统计、排序等操作:

a = [1, 3, 11, 13, 9, 7, 5]

b= [22, 44]

a.append(111) #a = [1, 3, 11, 13, 9, 7, 5, 111]

a.count(1) #1

a.extend(b) #a = [1, 3, 11, 13, 9, 7, 5, 111, 22, 44]

a.index(3) #1

a.insert(1, 666) #a = [1, 666, 3, 11, 13, 9, 7, 5, 111, 22, 44]

a.pop() #a = [1, 666, 3, 11, 13, 9, 7, 5, 111, 22]

a.remove(5) #a = [1, 666, 3, 11, 13, 9, 7, 111, 22]

a.reverse()#a = [22, 111, 7, 9, 13, 11, 3, 666, 1]

a.sort() #a = [1, 3, 7, 9, 11, 13, 22, 111, 666]

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/226349.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月16日 下午11:06
下一篇 2026年3月16日 下午11:06


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号