python基础-列表
列表声明:
a=['alex','lcc','ygl','zxh','zws'] b=[] #定义一个空列表
追加:
a.append('我是新来的')
['alex', 'lcc', 'ygl', 'zxh', 'zws', '我是新来的']
插入:
a.insert(1,'newer111') ['alex', 'newer111', 'lcc', 'ygl', 'zxh', 'zws', '我是新来的']
删除:
a.pop(1) #删除指定下标的元素,从0开始 ['alex', 'lcc', 'ygl', 'zxh', 'zws', '我是新来的'] a.pop() #不传则删除最后一个元素 ['alex', 'lcc', 'ygl', 'zxh', 'zws'] a.remove('lcc') #删除指定元素,不能传下标,否则报错 ['alex', 'ygl', 'zxh', 'zws'] del a[2] #删除列表中下标为2的元素 ['alex', 'ygl', 'zws'] del a #删除整个列表
修改:
['alex', 'ygl', 'zxh', 'zws'] a[1]='我是修改后的ygl' ['alex', '我是修改后的ygl', 'zxh', 'zws']
查询:通过切片取
>>> names = ["Alex","Tenglan","Eric","Rain","Tom","Amy"] >>> names[1:4] #取下标1至下标4之间的数字,包括1,不包括4 ['Tenglan', 'Eric', 'Rain'] >>> names[1:-1] #取下标1至-1的值,不包括-1 ['Tenglan', 'Eric', 'Rain', 'Tom'] >>> names[0:3] ['Alex', 'Tenglan', 'Eric'] >>> names[:3] #如果是从头开始取,0可以忽略,跟上句效果一样 ['Alex', 'Tenglan', 'Eric'] >>> names[3:] #如果想取最后一个,必须不能写-1,只能这么写 ['Rain', 'Tom', 'Amy'] >>> names[3:-1] #这样-1就不会被包含了 ['Rain', 'Tom'] >>> names[0::2] #后面的2是代表,每隔一个元素,就取一个 ['Alex', 'Eric', 'Tom'] >>> names[::2] #和上句效果一样 ['Alex', 'Eric', 'Tom']
>>> names[2] #取下标为2即第三个元素
Eric
扩展:
a=['alex', 'ygl', 'zxh', 'zws'] b=[1,2,3] a.extend(b) ['alex', 'ygl', 'zxh', 'zws', 1, 2, 3]
拷贝:
a=['alex', 'ygl', 'zxh', 'zws', 1, 2, 3] c=a.copy() c=['alex', 'ygl', 'zxh', 'zws', 1, 2, 3]
注意:这里的copy只是浅copy,只能复制第一层,对于列表中还嵌套列表的情况就不适用了,子列表数据会一起改变。
如果要完全copy,则要用到b=copy.deepcopy(a)方法。这样无论a怎么变化,b都还是copy前的a。
排序和翻转:
a=['alex','zws','ygl','zxh','lcc'] a.sort() #python3里不同数据类型不能放在一起排序 ['alex', 'lcc', 'ygl', 'zws', 'zxh'] d.reverse() ['zxh', 'zws', 'ygl', 'lcc', 'alex']
统计:
a=['alex','zws','ygl','zxh','lcc','zws'] a.count('zws') #统计'zws'个数 2
获取下标:
index() 方法用于从列表中找出某个对象第一个匹配项的索引位置,如果这个对象不在列表中会报一个异常。
index(obj,start,stop)
- obj -- 查找的对象。
- start -- 可选参数,开始索引,默认为0。(可单独指定)
- stop -- 可选参数,结束索引,默认为列表的长度。(不能单独指定)
a=['alex','ygl','zxh','lcc','zws'] a.index('zws') 4
列表循环:
for i in names: print(i)

浙公网安备 33010602011771号