目录
列表(list)
访问列表元素
更新和删除列表元素
元组(tuple)
元组的访问、更新、删除操作
字典(dictionary)
创建空字典
修改、删除字典
总结
列表、元组和字典的介绍
列表(list)、元组(tuple)和字典(dictionary)都是序列,序列都是由索引和元素组成。遍历和访问都按照如下格式:
具体索引知识和切片请查看:Python3 字符串
对位置索引不清楚的可以查看下面链接,方便理解下文介绍,有基础的可以跳过。
Python中的X[1:]、X[:-1]、X[:,0]、X[:,1]、X[:,:,0]、X[:,:,1]等下标索引的思考https://blog.csdn.net/qq_44444503/article/details/124188526
列表(list)
创建列表,格式为:[‘…’ , ‘….’ , ….. ‘….’ ],用逗号分隔,用方括号括起来。
list1 = ['Google', 'Runoob', 1997, 2000]list2 = [1, 2, 3, 4, 5 ]list3 = ["a", "b", "c", "d"]list4 = ['red', 'green', 'blue', 'yellow', 'white', 'black']
访问列表元素
list = ['red', 'green', 'blue', 'yellow', 'white', 'black']print( list[0] )print( list[1] )print( list[2] )输入结果:=======================================redgreenblue
更新和删除列表
可以使用 append() 方法来添加列表元素,del删除列表元素,看下代码你就懂了。
list = ['Google', 'Runoob', 1997, 2000]print ("原始列表 : ", list)#列表更新操作list[2] = '马保国'print ("更新第三个元素的列表 : ", list)#列表删除操作del list[2]#删除索引为2的列表元素,也就是删除列表的第三个元素print ("删除第三个元素: ", list)#列表append操作list.append('Baidu')print ("更新后的列表 : ", list)输出结果:========================================原始列表 : ['Google', 'Runoob', 1997, 2000]更新第三个元素的列表 : ['Google', 'Runoob', '马保国', 2000]删除第三个元素: ['Google', 'Runoob', 2000]更新后的列表 : ['Google', 'Runoob', 2000, 'Baidu']
元组(tuple)
Python 的元组与列表类似,但是元组的元素不能修改。元组使用小括号( ),列表使用方括号[ ]
特殊情况:元组中只有一个元素时,需要在元素后面添加逗号,否则括号会被当作运算符使用:
tup1 = (50)type(tup1) # 不加逗号,类型为整型tup1 = (50,)type(tup1) # 加上逗号,类型为元组
元组的访问、更新、删除操作
元组的访问、删除操作与列表相同 ,元组的元素不能修改,但可以对元组连接组合;元组的元素值也不能删除,只能删除整个元组。看下代码:
tup1 = ('Google', 'Runoob', 1997, 2000)tup2 = ('Baidu', '腾讯')tup = tup1 + tup2 # 元组连接组合print('连接组合后的元组:',tup)del tup#要删除只能删除整个元组,不能删除元组的某个元组print("删除后的元组 tup : ")print(tup)#输出结果会报错:NameError: name 'tup' is not defined输出结果:=========================NameError: name 'tup' is not defined连接组合后的元组: ('Google', 'Runoob', 1997, 2000, 'Baidu', '腾讯')删除后的元组 tup :
字典(dictionary)
字典的每个键值key : value对用冒号:分割,每个对之间用逗号(,)分割,整个字典包括在花括号{}中 ,注意:dict作为 Python 的关键字和内置函数,变量名不建议命名为dict。举例如下:
tinydict = {'name': 'runoob', 'likes': 123, 'url': 'www.runoob.com'}
创建空字典
主要有以下两种方法。
emptyDict = {}#方法一:使用{ }创建emptyDict = dict()#方法二:使用内建函数 dict() 创建
修改、删除字典
首先看下修改字典元组和键,具体如下:
tinydict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'} tinydict['Age'] = 8 # 更新 Agetinydict['School'] = "菜鸟教程" # 添加信息 print ("tinydict['Age']: ", tinydict['Age'])print ("tinydict['School']: ", tinydict['School'])输出结果:=======================================tinydict['Age']: 8tinydict['School']: 菜鸟教程
删除:能删单一的元素也能清空字典,清空只需一项操作。删除一个字典用del命令,具体如下:
tinydict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}print('原字典:',tinydict)del tinydict['Name'] # 删除键 'Name'print('删除键Name后:',tinydict)print ("字典Age的键值: ", tinydict['Age'])tinydict.clear() # 清空字典del tinydict # 删除字典,会引发异常,因为用执行del操作后字典不再存在print ("tinydict['School']: ", tinydict['School']) 输出结果:==============================================原字典: {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}删除键Name后: {'Age': 7, 'Class': 'First'}字典Age的键值: 7Traceback (most recent call last): print ("tinydict['School']: ", tinydict['School'])NameError: name 'tinydict' is not defined
总结
1.列表、元组和字典都是序列
2.列表字典可以修改和删除序列中的某个元素,而元组就是一个整体,不能修改和删除,一定要修改或删除的话,只能修改和删除整个元组。
3.既然元组不能删除和修改,有什么作用呢?
1.元组比列表遍历速度快,因为元组是一个整体,运算效率高;
2.正是因为不能修改,元组可以保护不需要修改的数据,可以使代码结构更安全。