Python列表的增删改查排嵌套特殊输出格式
Python列表的增删改查排嵌套特殊输出格式
一、列表的样子:
a = [‘q’ , ’w’ , ’e ’, ’r’,‘t’]
a为列表名,[ ]为列表内容,‘ ’为列表内的元素,‘q’为a[0]
二、查(也称切片):
print ( a[0] ) #取出列表中第一个元素 即:q
print ( a[1:] ) #从第二个元素开始取到最后 即:['w', 'e','r', 't']
print ( a[1:3] ) #取出从第二个开始到第三个元素 即:['w','e']
print ( a[0:-1] ) #从第一个元素开始取到倒数第二个元素 即:['q', 'w', 'e', 'r']
print ( a[0:-1:1] ) #从左到右一个一个去取,取到倒数第二个元素 即:['q', 'w', 'e', 'r']
print ( a[0::2] ) #从左到右隔一个去取 即:['q', 'e', 't']
print ( a[2::-1] ) #从左到右的第三个元素开始往左开始依次取出元素 即:['e', 'w', 'q']
三、增
增有两个方法分别为append和insert。
1、append为在列表的末尾增加元素,且每次只能增加一个元素。
a.append(‘y’) #在a列表末尾加上‘y’
print (a) #输出结果为['q', 'w', 'e', 'r', 't', 'y']
b = [‘a’ , ’s’ , ’d’, ] #将b列表的元素插入a列表的后
i = 0 #面,通过这个方法可以将多个元
for i in range (len(b)) #素通过append加到另一列表后
a.append ( b[i] ) #面
print (a) #输出结果为['q', 'w', 'e', 'r', 't', 'y','a', 's', 'd']
2、extend 可一次性添加多个元素
a.extend(['a','s','d']) #将['a','s','d']添加到a列表后
print (a) #结果为['q', 'w', 'e', 'r', 't', 'y','a', 's', 'd']
3.+
将两个列表合并成一个列表,可以使用‘+’。格式为‘列表1’+‘列表2’。优点:可以不改变原先两个列表的值,而生成第三个列表。
p=[7,8,9] #定义列表p
q=[0,1,2,3] #定义列表
w=p+q #合并列表p和q
print('w=',w) #结果为[7, 8, 9, 0, 1, 2, 3]
4、insert为在指定位置增加元素。(每次只能增加一个元素)
a.insert ( 2 , ’z’ ) #将‘z’插入到a列表的第3位后面
print ( a ) #结果为['q', 'w', 'z', 'e', 'r', 't']
四、改
直接将该元素重新赋值即可。
a[2]=’w’ #将a列表的第三个元素修改成‘w’
print (a) #结果为['q', 'w', 'w', 'e', 'r', 't']
a[1:3]=’2’,’3’ #将a列表的第二和三元素分别替换成‘2’和‘3’
print (a) #结果为['q', '2', '3', 'e', 'r', 't']
五、删
1.remove
a.remove(‘q’) #将a列表中’q’元素删除
print (a) #结果为['w', 'z', 'e', 'r', 't']
a.remove(a[1]) #将a列表中a[1]元素删除
print (a) #结果为['q', 'z', 'e', 'r', 't']
2.pop
c=a.pop(1) #将a列表中a[1]元素删除
print (a) #结果为['q', 'z', 'e', 'r', 't']
print (c) #将删除的值输出
3.del
del a[1] #将a列表中a[1]元素删除
print (a) #结果为['q', 'z', 'e', 'r', 't']
六、计算元素出现次数
d=[‘2’,’1’,’3’,’3’,’3’,’2’] #定义列表d
e=d.count(‘2’) #计算d列表中元素‘2出现的次数’
print (e) #输出计算结果 为2
七、根据内容找位置
Index只能查找该元素第一次出现的位置。如若该元素只出现一次则查找的位置即为其在列表中出现的全部位置;如若该元素在列表里出现多次,需要配合切片共同处理。共同处理的思路:先查出第一次出现的位置,然后再从第一次出现的位置到最后一个元素再次查找,依次将该元素的所有位置查出。
f=d.index(‘1’) #查找d列表里元素‘1’是该列表里的第几个元素
print (f) #输出查找值
八、将列表内的值排序
1、倒序
Reverse可以将列表里的元素全部倒序重新排列。
t=['1','2','3','4','5'] #定义列表t
t.reverse() #将列表t里的元素全部倒序重新排列
print(t) #将列表t输出
2、从小到大排序
Sort()可以将数字按大小重新排列,也可以将字母按大写排在小写前的26个英文字母的顺序排列。如果是字符串则以首字母排列。(实质是按照ASCII码的排序从小到大排列,即数字<大写字母<小写字母)
j=[3,2,4,1,0] #定义列表j
j.sort() #将列表j里的元素从小到大排序
print (j) #输出重新定义后的列表j 为[0,1,2,3,4]
h=['s','d','h','a','k','K','A','D'] #定义列表h
h.sort() #重新排列列表h
print(h) #输出重新定义后的列表h为['A', 'D', 'K', 'a', 'd', 'h', 'k', 's']
n=[‘s’,’d’,’c’,’5’,’4’,’D’] #定义列表n
n.sort() #重新排列列表n
print (n) #结果为['4', '5', 'D', 'c', 'd','s']
九、列表嵌套
一个列表内的元素可以是列表,元组。若取的值为列表内的元素为列表或元组内的值时,则需两个索引值,第一个为索取值所在列表或元组在外列表中的索引值,第二个为索取值在内列表或内元组的索取值。
y=['s',[1,2,3],'e'] #定义嵌套列表y
print(y[1][1]) #取出内列表里的元素
十、特殊输出列表
1.列表遍历
列表遍历即将列表里的值依次取出。
a = ['q','w','e','r','t'] #定义列表a
for i in a: #遍历列表a
print(i) #依次输出每一个列表的值占一行
2.遍历列表的同时把元素的序号一同输出
结果是以元组的方式输出的。
a = ['q','w','e','r','t'] #定义列表a
for i in enumerate(a): #遍历列表a
print(i) #输出结果为(0, 'q')
(1, 'w')
(2, 'e')
(3, 'r')
(4, 't')
若想将元素从1排:
a = ['q','w','e','r','t'] #定义列表a
for i in enumerate(a,1): #遍历列表a,1为排序的起始位置,若想从2开始则改为2
print(i) #输出结果为(1, 'q')
(2, 'w')
(3, 'e')
(4, 'r')
(5, 't')
如若想在上述基础上去掉括号和逗号:
a = ['q','w','e','r','t'] #定义列表a
for i ,x in enumerate(a): #遍历列表a
print(i,x) #输出结果为(0, 'q')
(1, 'w')
(2, 'e')
(3, 'r')
(4, 't')
其实质是将enumerate()产生的序号赋给变量i,而遍历的结果赋给变量x。具体赋给哪个变量,由for后面的两个变量决定,前者是序号,后者是遍历结果。在print时可以在两变量间增加任何东西输出。