python系列(2)- 列表和元组

列表和元组基础

什么是列表和元组

  • 都是一个可以方式任意数据类型的有序集合

对于python而言,集合中的数据类型可以不一致,如下:

# 列表中同时含有int和string类型的元素
list1 = [1,2,'hello','world']

# 元组中同时含有int和string类型的元素
tup = ('jason', 22) 

列表和元组的区别

  • 列表是动态的:长度大小不固定,可以随意增加、删减或者改变元素(mutable)

  • 元组是静态的:长度大小固定,无法增加删减或者改变(immutable)

  • 即列表是可变的,元组是不可变的

举个栗子

l = [1, 2, 3, 4]
# 和很多语言类似,python中索引同样从0开始,l[3]表示访问列表的第四个元素
l[3] = 40 
print(l)
# 打印结果如下
[1, 2, 3, 40]

tup = (1, 2, 3, 4)
tup[3] = 40
# 控制台报错信息
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment

列表和元组的基本操作

索引

python中的列表和索引都支持负数,-1表示最后一个元素,-2表示倒数第二个元素...

同样的栗子

l = [1, 2, 3, 4]
print(l[-1])
# 打印结果如下
4

tup = (1,2,3,4)
print(tup[-1])
# 打印结果如下
4

切片

l = [1, 2, 3, 4]
l[1:3] # 返回列表中索引从1到2的子列表
[2, 3]

tup = (1, 2, 3, 4)
tup[1:3] # 返回元组中索引从1到2的子元组
(2, 3) 

上一篇:0A04 无监督学习:聚类(2) 近邻算法(Affinity Propagation)


下一篇:5661. 替换隐藏数字得到的最晚时间