python列表、切片和元组操作示例


列表:

列表是指一组有序的数据集合

列表中可以包含不同类型的对象

列表可以由[]或工厂函数创建

支持下标及切片操作


定义列表:列表的命名规则和变量等同,定义列表使用字母“,”隔开,使用单引号或者双引号定义均可

>>> shopping_list = ['Iphone','Mac','Bike','Coffee','Car','Clothes','Food','Gift']

查看列表:查看列表时直接输入列表名回车即可

>>> shopping_list
['Iphone', 'Mac', 'Bike', 'Coffee', 'Car', 'Clothes', 'Food', 'Gift']

查看列表中元素的个数:通过内置函数len()即可实现

>>> len(shopping_list)
8

找到列表中每个元素的位置:通过索引实现,注意索引是从0开始的

>>> shopping_list.index('Bike') #提取Bike的位置
2
>>> shopping_list[0]    #提取第一个元素
'Iphone'
>>> shopping_list[-1]   #提取最后一个元素
'Gift'
>>> shopping_list[-3]     #倒数第三个元素
'Clothes'

切片:

从列表中取出指定多个元素

>>> shopping_list[0:3]   #提取从0到3个元素,注意中括号,,冒号
['Iphone', 'Mac', 'Bike']
>>> shopping_list[:3]   #0也可以省略不写
['Iphone', 'Mac', 'Bike']
>>> shopping_list[2:5]   #提取第2到第5个元素
['Bike', 'Coffee', 'Car']
>>> shopping_list[-3:]   #提取最后三个元素
['Clothes', 'Food', 'Gift']
>>> shopping_list[0:8:2]  #从1到8隔一个取一个
['Iphone', 'Bike', 'Car', 'Food']


增删改查:

增:使用列表名.append的方式添加一个列表元素

shopping_list.append('MovieTicket')
>>> shopping_list
['Iphone', 'Mac', 'Bike', 'Coffee', 'Car', 'Clothes', 'Food', 'Gift', 'MovieTicket']

使用列表名.remove的方式删除一个列表元素,使用列表名.pop()的方式删除最后一个元素

shopping_list.pop()          #删除最后一个列表元素
'MovieTicket'
>>> shopping_list.remove('Mac')  #删除一个指定元素
>>> shopping_list
['Iphone', 'Bike', 'Coffee', 'Car', 'Clothes', 'Food', 'Gift']
shopping_list
['Toy', 'Iphone', 'Gift', 'Food', 'Food', 'Clothes', 'Car', 'COFFEE', 'Bike', 'Banana', 'Apple']
>>> del shopping_list[3:8]     #删除索引3到8的元素,不包括8
>>> shopping_list
['Toy', 'Iphone', 'Gift', 'Bike', 'Banana', 'Apple']

:重新定义列表元素

shopping_list.index('Coffee')
2
>>> shopping_list[2] = 'COFFEE' #使用元素位置改元素
>>> shopping_list
['Iphone', 'Bike', 'COFFEE', 'Car', 'Clothes', 'Food', 'Gift']
shopping_list.insert(3,'Toy')  #添加一个列表元素,先位置,后输名
>>> shopping_list
['Iphone', 'Bike', 'COFFEE', 'Toy', 'Car', 'Clothes', 'Food', 'Gift']
shopping_list.append('Food')   #添加一个元素,append不用指定位置,默认最后面
>>> shopping_list
['Iphone', 'Bike', 'COFFEE', 'Toy', 'Car', 'Clothes', 'Food', 'Gift', 'Food']
>>> shopping_list.index('Food') #当同一列表中有相同元素时,则返回匹配第一个元素位置
6

合并列表

>>> list2 = ['Banana','Apple']  #添加一个新列表
>>> shopping_list.extend(list2)  #合并列表使用列表名.extend(另一列表名)的形式
>>> shopping_list  
['Iphone', 'Bike', 'COFFEE', 'Toy', 'Car', 'Clothes', 'Food', 'Gift', 'Food', 'Banana', 'Apple']

列表排序

shopping_list.sort()     #使用列表名.sort()进行列表排序
>>> shopping_list
['Apple', 'Banana', 'Bike', 'COFFEE', 'Car', 'Clothes', 'Food', 'Food', 'Gift', 'Iphone', 'Toy']

列表反转

shopping_list.reverse()   #使用列表名.reverse()进行列表元素反转
>>> shopping_list
['Toy', 'Iphone', 'Gift', 'Food', 'Food', 'Clothes', 'Car', 'COFFEE', 'Bike', 'Banana', 'Apple']

             

元组:

通过()或工厂函数tuple()创建元组

元组是有序的、不可变类型

与列表类似,作用于列表的操作,绝大数也可以作用于元组

>>> t = (1,2) #定义一个元组,中括号为列表,小括号为元组,嗨,这是区别之一!
>>> t
(1, 2)
>>> t = ()   #定义一个空的tuple
>>> t
()
>>> t = (1,)  #定义只有一个元素的元组,为消除歧义,只有一个元素的tuple定义时必须加一个逗号
>>> t
(1,)