一、列表
列表:可以一次性存储多个数据,且可以为不同的数据类型,常见操作有增、删、改、查
格式:[数据1,数据2,数据3,...]
1.1 查找
- index():返回指定数据所在位置的下标,不存在则报错
- 语法:列表序列.index(数据,开始位置下标,结束位置下标)
- count():统计指定数据在当前列表中出现的次数
- len():访问列表长度,即列表中数据的个数
- 判断
- in:判断指定数据在某个列表序列,若在返回True,否则返回False
- not in:判断指定数据不在某个列表序列,若不在返回True,否则返回False
举例如下:
list = ['World', 'China', 'JiangXi']
print('-------------------查找--------------------')
print(list[1], list.index('China', 0,), list.count('China'), len(list))
print('China' in list, 'China' not in list)
输出:
-------------------查找--------------------
China 1 1 3
True False
1.2 增加
作用:增加指定数据到列表中
- append(数据):在列表结尾追加数据,若数据为序列,则追加整个序列至列表
- 语法:列表序列.append(数据)
- extend(数据):在列表结尾追加数据,若数据为序列,则将序列中数据逐一添加至列表
- 语法:列表序列.extend(数据)
- insert():在指定位置新增数据
- 语法:列表序列.insert(位置下标,数据)
举例如下:
print('-------------------增加--------------------')
list = ['World', 'China', 'JiangXi']
list.append('YiChun')
print(list)
list.append(['ZhangShu', 'GanZhou']) # 追加整个序列
print(list)
list.extend('NK')
print(list)
list.extend(['JXUST', 'XY']) # 逐一添加
print(list)
list.insert(8, 'XX') # 将XX插入到列表中第8个位置后面
print(list)
输出:
-------------------增加--------------------
['World', 'China', 'JiangXi', 'YiChun']
['World', 'China', 'JiangXi', 'YiChun', ['ZhangShu', 'GanZhou']]
['World', 'China', 'JiangXi', 'YiChun', ['ZhangShu', 'GanZhou'], 'N', 'K']
['World', 'China', 'JiangXi', 'YiChun', ['ZhangShu', 'GanZhou'], 'N', 'K', 'JXUST', 'XY']
['World', 'China', 'JiangXi', 'YiChun', ['ZhangShu', 'GanZhou'], 'N', 'K', 'JXUST', 'XX', 'XY']
1.3 删除
- del:删除整个列表或列表中指定数据
- 语法:del 目标
- pop():删除指定下标的数据(默认最后一个),并返回该数据
- 语法:列表序列.pop(下标)
- remove():移除列表中某个数据的第一个匹配项
- 语法:列表序列.remove(数据)
- clear():清空列表
举例如下:
print('-------------------删除--------------------')
list = ['World', 'China', 'JiangXi', 'YiChun', ['ZhangShu', 'GanZhou'], 'N', 'K', 'JXUST', 'XX', 'XY']
del list[3], list[3]
# del list # 删除列表list
print(list)
print(list.pop(6), list) # 删除下标为6的数据并返回该数据
list.remove('K')
print(list)
# list.clear() # 清空列表list
输出:
-------------------删除--------------------
['World', 'China', 'JiangXi', 'N', 'K', 'JXUST', 'XX', 'XY']
XX ['World', 'China', 'JiangXi', 'N', 'K', 'JXUST', 'XY']
['World', 'China', 'JiangXi', 'N', 'JXUST', 'XY']
1.4 修改
- 修改指定下标数据
- 语法:序列[下标] = '修改后的值'
- reverse():逆置
- sort():排序,如下,reverse默认为False,即升序,为True时降序
- 语法:列表序列.sort(key=None,reverse=False)
- 复制
- copy():复制列表
举例如下:
print('-------------------修改--------------------')
list = ['World', 'China', 'JiangXi', 'N', 'JXUST', 'XY']
list[3] = '南康'
list[5] = 'YX'
print(list)
list.reverse() # 逆置
print(list)
list.sort() # 升序排序
print(list)
l = list.copy() # 将列表list复制至l
print(l)
输出:
-------------------修改--------------------
['World', 'China', 'JiangXi', '南康', 'JXUST', 'YX']
['YX', 'JXUST', '南康', 'JiangXi', 'China', 'World']
['China', 'JXUST', 'JiangXi', 'World', 'YX', '南康']
['China', 'JXUST', 'JiangXi', 'World', 'YX', '南康']
二、元组
元组:可以存储多个数据,元组内数据不能修改
特点:用小括号定义,数据可以是不同数据类型,数据间用逗号隔开
举例如下:
print('--------------元组定义--------------------')
t1 = ('a', 'b', 'c', 'a', 2) # 多个数据元组定义
t2 = ('aa',) # 单个数据元组定义,后面需加逗号,
t3 = (22) # int类型
print(t1, t2, t3, type(t1), type(t2), type(t3))
print('--------------元组操作方法-----------------')
print(t1[2], t1.index('a', 1,), t1.count('a'), len(t1)) # 查找下标为2的数据、查找数据a、统计数据a个数、获取元组长度
t4 = ('a', 'b', 'c', [1, 2, 3], 'd')
t4[3][1] = 22 # 将元组内的列表数据2修改为22,元组内直接数据不能修改
print(t4)
输出:
--------------元组定义--------------------
('a', 'b', 'c', 'a', 2) ('aa',) 22 <class 'tuple'> <class 'tuple'> <class 'int'>
--------------元组操作方法-----------------
c 3 2 5
('a', 'b', 'c', [1, 22, 3], 'd')