Python--列表·进阶使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python--列表·进阶使用相关的知识,希望对你有一定的参考价值。


列表元素的增加与删除

append()函数

在列表末端增加元素

格式:

List_name.append(新增元素‘)

列表A.append(列表B)

在表的末端加入元素

lianxi=[]
print("初始列表内容:",lianxi)
lianxi.append(first)
print("在末尾加一个元素:",lianxi)
lianxi.append(second)
print("在末尾加一个元素:",lianxi)

Python(9)--列表·进阶使用_字符串

在表的末端再加入一个表

lianxi=[]
print("初始列表内容:",lianxi)
lianxi.append(first)
print("在末尾加一个元素:",lianxi)
lianxi.append(second)
print("在末尾加一个元素:",lianxi)
b=["新表","biao"]
lianxi.append(b)
print(lianxi)

 

Python(9)--列表·进阶使用_python_02

extend()函数:连接两个表

这也是2个列表连接的方法,与 append ()类似,不过这个方法只适用2个列表连接,不能用在一般元素。同时在连接后, extend ()会将列表分解成元素,一一插入列表。

格式:
 listA.exteng(listB)

lianxi=[first,second,third]
a=[a,B]
lianxi.extend(a)
print(lianxi)

Python(9)--列表·进阶使用_字符串_03

 insert()函数:插入元素

 将一个元素添加到当前列表的指定位置中

格式:insert(索引值,元素内容)

lianxi=[first,second,third]
print("初始列表内容:",lianxi)
lianxi.insert(0,A)
print("在索引0位置上增加:",lianxi)
lianxi.insert(3,B)
print("在索引3位置上增加:",lianxi)

Python(9)--列表·进阶使用_List_04

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)

 

Python(9)--列表·进阶使用_List_05

 查看被删除元素:

lianxi=[first,second,third]
print("初始列表内容:",lianxi)
lianxi.pop(0)
print("删除索引0位置上元素:",lianxi)
a=lianxi.pop()
print("删除末端位置上元素:",lianxi)
print(a)

 

Python(9)--列表·进阶使用_python_06

remove()函数:删除指定元素

删除指定元素

格式:List_name.remove(想要删除的东西)

如果列表中有相同的元素,就删除第一个出现的元素

lianxi=[first,second,third]
print("初始列表内容:",lianxi)
lianxi.remove(first)#删除first
print("结果为:",lianxi)

Python(9)--列表·进阶使用_开发语言_07

列表的排序 

reverse()函数

颠倒排序,使用后就永久生效了

格式:List_name.reverse( ) 

效果如同:[::-1]

lianxi=[first,second,third]
print("初始列表内容:",lianxi)
print("使用[::-1]:",lianxi[::-1])
lianxi.reverse()
print("使用reverse函数:",lianxi)

 

Python(9)--列表·进阶使用_字符串_08

sort()函数 

将列表元素从小到大排列,对数字和英文字符串的排序有显著效果,(如果是英文字符串请先改为统一的小写或者大写),顺序会被永久更改。

格式:

List.sort()

List.sort(reverse=True)                 #从大到小排列顺序

数字与英文的排序:

a=[a,ebb,cfdf]
b=[1,3,6,7,5]
a.sort()
b.sort()
print(a)
print(b)

Python(9)--列表·进阶使用_字符串_09

从大到小的排序: 

a=[a,ebb,cfdf]
b=[1,3,6,7,5]
a.sort(reverse=True)
print(a)

Python(9)--列表·进阶使用_浅复制_10

sorted()函数:从小到大排列

使用效果同sort()函数,但是用新列表储存排序后的数据,保持原有列表。

格式:

newlist=sorted(lastlist) 

a=[a,ebb,cfdf]
b=[2,4,3]
c=sorted(a)
d=sorted(b)
print(c,";",d)

 

Python(9)--列表·进阶使用_开发语言_11

列表进阶操作

index()函数

这方法可以返回特定元素第一次出现的索引值

格式:

索引值=listname.index(搜寻值)

nums=[2,3,9,4,5,3,2,4]
searchnum=3
a=nums.index(searchnum)
print("搜寻的元素%s 第一次出现的索引值为%d"%(searchnum,a))

Python(9)--列表·进阶使用_List_12

cout()函数 

返回特定元素出现的次数,如果没有就会出现错误

格式:

次数=listname.count(搜寻值)

nums=[2,3,9,4,5,3,2,4]
searchnum=3
a=nums.count(searchnum)
print("搜寻的元素 %s 出现的次数是:%d"%(searchnum,a))

Python(9)--列表·进阶使用_浅复制_13

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)

Python(9)--列表·进阶使用_python_14

浅复制-shallow copy

浅复制的格式如下:

str2=str1[:]

str1=[a,b]
str2=str1[:]
print(str1,str2)
str1.append(c)
str2.append(d)
print(str1,str2)

 

Python(9)--列表·进阶使用_字符串_15

如上所示,分开了。 

以上是关于Python--列表·进阶使用的主要内容,如果未能解决你的问题,请参考以下文章

为什么Python在列表和元组的末尾允许使用逗号?

python使用np.linspace函数生成均匀的浮点数列表实战:生成浮点数列表生成浮点数列表(指定是否包含末尾值)

python进阶:7招展开嵌套列表

python中列表增加元素的方法

python进阶学习chapter02(列表字典集合操作)

Python:仅在列表末尾删除重复值