列表元素的增加与删除
append()函数
在列表末端增加元素
格式:
List_name.append('新增元素‘)
列表A.append(列表B)
在表的末端加入元素
lianxi=[] print("初始列表内容:",lianxi) lianxi.append('first') print("在末尾加一个元素:",lianxi) lianxi.append('second') print("在末尾加一个元素:",lianxi)
在表的末端再加入一个表
lianxi=[] print("初始列表内容:",lianxi) lianxi.append('first') print("在末尾加一个元素:",lianxi) lianxi.append('second') print("在末尾加一个元素:",lianxi) b=["新表","biao"] lianxi.append(b) print(lianxi)
extend()函数:连接两个表
这也是2个列表连接的方法,与 append ()类似,不过这个方法只适用2个列表连接,不能用在一般元素。同时在连接后, extend ()会将列表分解成元素,一一插入列表。
格式:
listA.exteng(listB)
lianxi=['first','second','third'] a=['a','B'] lianxi.extend(a) print(lianxi)
insert()函数:插入元素
将一个元素添加到当前列表的指定位置中
格式:insert(索引值,元素内容)
lianxi=['first','second','third'] print("初始列表内容:",lianxi) lianxi.insert(0,'A') print("在索引0位置上增加:",lianxi) lianxi.insert(3,'B') print("在索引3位置上增加:",lianxi)
pop()函数:删除列表元素
删除列表元素
格式:
value=List_name.pop() #()里面没东西,默认删除列表末端的元素
value=List_name.pop(i) #删除索引值i的元素
实例:
lianxi=['first','second','third'] print("初始列表内容:",lianxi) lianxi.pop(0) print("删除索引0位置上元素:",lianxi) lianxi.pop() print("删除末端位置上元素:",lianxi)
查看被删除元素:
lianxi=['first','second','third'] print("初始列表内容:",lianxi) lianxi.pop(0) print("删除索引0位置上元素:",lianxi) a=lianxi.pop() print("删除末端位置上元素:",lianxi) print(a)
remove()函数:删除指定元素
删除指定元素
格式:List_name.remove(想要删除的东西)
如果列表中有相同的元素,就删除第一个出现的元素
lianxi=['first','second','third'] print("初始列表内容:",lianxi) lianxi.remove('first')#删除first print("结果为:",lianxi)
列表的排序
reverse()函数
颠倒排序,使用后就永久生效了
格式:List_name.reverse( )
效果如同:[::-1]
lianxi=['first','second','third'] print("初始列表内容:",lianxi) print("使用[::-1]:",lianxi[::-1]) lianxi.reverse() print("使用reverse函数:",lianxi)
sort()函数
将列表元素从小到大排列,对数字和英文字符串的排序有显著效果,(如果是英文字符串请先改为统一的小写或者大写),顺序会被永久更改。
格式:
List.sort()
List.sort(reverse=True) #从大到小排列顺序
数字与英文的排序:
1. a=['a','ebb','cfdf'] 2. b=[1,3,6,7,5] 3. a.sort() 4. b.sort() 5. print(a) 6. print(b)
从大到小的排序:
1. a=['a','ebb','cfdf'] 2. b=[1,3,6,7,5] 3. a.sort(reverse=True) 4. print(a)
sorted()函数:从小到大排列
使用效果同sort()函数,但是用新列表储存排序后的数据,保持原有列表。
格式:
newlist=sorted(lastlist)
a=['a','ebb','cfdf'] b=[2,4,3] c=sorted(a) d=sorted(b) print(c,";",d)
列表进阶操作
index()函数
这方法可以返回特定元素第一次出现的索引值
格式:
索引值=listname.index(搜寻值)
nums=[2,3,9,4,5,3,2,4] searchnum=3 a=nums.index(searchnum) print("搜寻的元素%s 第一次出现的索引值为%d"%(searchnum,a))
cout()函数
返回特定元素出现的次数,如果没有就会出现错误
格式:
次数=listname.count(搜寻值)
nums=[2,3,9,4,5,3,2,4] searchnum=3 a=nums.count(searchnum) print("搜寻的元素 %s 出现的次数是:%d"%(searchnum,a))
join()函数
将列表的元素组成一个字符串
格式:
char.join(seq) # seq 表示参数必须是列表、元组等序列数据
至于 char 则是组合后各元素间的分隔字符,可以是单一字符,也可以是字符串。
nums=['1','2','3'] char='~' print(char.join(nums))
列表的复制
深复制-deep copy
下面我设定了两个列表str1,str2,将str1的值复制给str2,此时两个的数据相同,并且“连在一起了”,如果我将str1增加一个元素“c”,str2增加一个元素“d”,
就会出现下图的结果:['a', 'b', 'c', 'd'] ['a', 'b', 'c', 'd'],
那么我想要这两个列表分开:str1['a','b','c']、str2['a','b','d']
这就需要浅复制了。
str1=['a','b'] str2=str1 print(str1,str2) str1.append('c') str2.append('d') print(str1,str2)
浅复制-shallow copy
浅复制的格式如下:
str2=str1[:]
str1=['a','b'] str2=str1[:] print(str1,str2) str1.append('c') str2.append('d') print(str1,str2)
如上所示,分开了。
参考资料
《python王者归来》洪锦魁著
本博客是纯粹个人学习,与朋友交流共赏,不存在任何商业目的。
如果您对此文章及作品版权的归属存有异议,请立即通知我,我将在第一时间予以删除,同时向你表示歉意!