列表 索引、切片、追加、删除、长度、循环、包含
列表语法
import copy
list = ['Jack','Tom',[' Abby','Ada'],1,2,3,33,3,3,3,2] #列表里可以嵌套列表
list12 = ['Jack','Tom',' Abby','Ada']
查询
list1 = name[1] #查看第一个元素
list1 = name[-1] #查看最后一个元素
list1 = name[:2] #取出前两个元素
list1 = name[-5:] #取出后5个元素,默认包含最后一个元素
print('Tom' in list) #查看列表中是否有对应元素,返回一个布尔值
删除
list.remove("Tom") #删除一个元素
del list[2:4] #del是一个全局用法,可以删除全局任何数据
list.pop(1) #使用pop删除默认删除第一个
增加
list.append('liangml') #append追加一个
list.insert(2,'shit') #在列表中插入一条数据
修改
list[1] = 'tom'
统计
list12.sort() #python2.x中字符串和数字会排序数字在前,Python3.x中字符串、数字无法排序
list1 = list.count(3) #统计列表某个元素数量
list2 = list.index(33) #index查看对应元素索引
list4 = list.extend(list12) #将list12列表扩展入list列表中
复制
list5 = list.copy() #列表copy用法只复制列表中第一层,嵌入式列表不会被复制
list6 = copy.deepcopy(list) #使用copy模块会将全部的数据复制一份出来
清除
list.clear() #将整个列表清空
长度查看
print(len(list)) #查看列表的长度也可以看其他数据的长度
翻转一个列表
list.reverse() #翻转整个list列表
print(list[::3]) # 隔3个取一个值
print(list)
更改单个列表中相同的元素
if 3 in list:
num_of_ele = list.count(3)
posistion_of_ele = list.index(3)
list[posistion_of_ele] = 3333
print("[%s] 3 is/are in name,posistion:[%s]" % (num_of_ele, posistion_of_ele))
print(list)
批量更改列表中相同的元素
for i in range(list.count(3)):
ele_index = list.index(3)
list[ele_index] = 3333
print(list)