列表操作
列表时用方括号括起来的一组元素值,是可变变量,可通过下表取值,也可以通过下表来修改值,列表中的元素是有序的,可以是不同的基本数据类型,如:
names=[1, 2, 3, “abc”, “def”]
列表取值时,下标也是从0开始,最大下标是元素个数减1,即len(names)-1
列表操作的常用方法:
增:
names.append(‘zhaocunlei‘) #从末尾追加元素
names.insert(0,‘yinwenqiao‘) #指定位置添加元素
删:
names.pop() #删除列表末尾元素,删谁也把它的值返回了,可用变量接收、用print查看
names.pop(2) #删除指定位置的元素,传参为列表元素下标
names.remove(‘yinwenqiao‘) #删除指定值,传参是列表的一个元素值,不能空参
#该方法不返回被删除的元素值,用print查看返回为None
# print(‘remove 方法的返回值‘,names.remove(‘yinwenqiao‘))
# del names[0] #使用del关键字删除指定元素
# names.clear() #清空列表
查:
print(names.count(‘hsdfsdf‘)) #查找值在list里面的次数
print(names.index(‘yinwenqiao‘))
#返回查找元素的下标,如果有多个话返回第一个的,如果没有的话就会报错
print(names.index(‘yinwenqiao‘,3,4)) #后面可以加上查找开始位置和结束位置
print(‘zhangyizhou‘ in names) #用in来判断一个元素是否在list里面,返回布尔值
print(names[-3]) #下标是-1的话,代表最后一个元素
改:
stus = [‘yangwb‘,‘yangwn‘,‘yanghj‘]
print(‘加起来的‘,stus+names) #两个列表合并,并返回新列表可用变量接收,原列表不变
stus.extend(names) #把另一个列表里面的每个值挨个添加到前面的列表中,不返回值
print(stus.extend(names)) # 结果是None
print(stus) # 被增加后的样子
nums = [23,34,21,2,456,35,12324324]
nums.sort() #排序,默认是升序,不返回值
print(‘sort:‘,nums)
nums.sort(reverse=True) #排序,指定reverse=True就是降序,不返回值
print(‘sort降序:‘,nums)
print(nums.reverse()) #倒序
print(nums)
以上都是单列表的一些基本操作,列表还有多维的,多维列表元素查找时不要慌,引用一样是用下标,注意维度要从外到内。
lis = [1,‘lily‘,19.8,[‘lily‘,‘lilei‘,[‘heheh‘,‘haha‘]]]
print(lis[3][2][1]) # 结果为haha