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

简介: Python(9)--列表·进阶使用

列表元素的增加与删除

append()函数

在列表末端增加元素

格式:

List_name.append('新增元素‘)

列表A.append(列表B)

在表的末端加入元素

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

88882a1cec614dbe94241630888cff43.png


在表的末端再加入一个表

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


30d04a2e22454344850ea5bba6681622.png


extend()函数:连接两个表

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

格式:
listA.exteng(listB)

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

c248a0c753344e3e8933585b7ffa4a5b.png


insert()函数:插入元素

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

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

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

3b108f8436964a1892f4d0fd18c4061e.png

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)

6a97f57e83f94cfbb0b692490272bafd.png


查看被删除元素:

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



52b32c4153384864bb90a4a26496fb0f.png


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

删除指定元素

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

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

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



81306d1a03b94b529e730b3595daa14e.png

列表的排序

reverse()函数

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

格式:List_name.reverse( )

效果如同:[::-1]

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


f6dab51ecb1e418cbb499bbd0c2aff26.png


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)


20ea05f4dc3942a2980ac4f2b5158fea.png


从大到小的排序:

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


671251054d24433ca1eda7521af88674.png


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

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

格式:

newlist=sorted(lastlist)


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


a853d1ae63cb4094b42cacdc05c6836f.png

列表进阶操作

index()函数

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

格式:

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

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



80262cfc934a4a7db1c5f69e3b6b640c.png


cout()函数

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

格式:

次数=listname.count(搜寻值)

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


eec6f6ef340d421d84fc76d6233ddc44.png


join()函数


将列表的元素组成一个字符串

格式:

char.join(seq)                  # seq 表示参数必须是列表、元组等序列数据

至于 char 则是组合后各元素间的分隔字符,可以是单一字符,也可以是字符串。


nums=['1','2','3']
char='~'
print(char.join(nums))

e6b4c0733e1b4a5d96d4379df0ceada6.png


列表的复制

深复制-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)

5bfec2eb54264187b44f487f4eaaf9df.png


浅复制-shallow copy

浅复制的格式如下:

str2=str1[:]

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


5a2f1d6641564386be202b8324d7ff5d.png


如上所示,分开了。


参考资料


《python王者归来》洪锦魁著


本博客是纯粹个人学习,与朋友交流共赏,不存在任何商业目的。

如果您对此文章及作品版权的归属存有异议,请立即通知我,我将在第一时间予以删除,同时向你表示歉意!

目录
相关文章
|
3天前
|
Python
空间管理大师已上线!(2),Python高级工程师进阶学习】
空间管理大师已上线!(2),Python高级工程师进阶学习】
|
5天前
|
Python
【Python进阶(五)】——模块搜索及工作目录
【Python进阶(五)】——模块搜索及工作目录
|
5天前
|
索引 Python
Python 中寻找列表最大值位置的方法
本文介绍了Python中找列表最大值及其位置的三种方法:1) 使用内置`max()`和`index()`函数;2) 通过循环遍历;3) 利用`enumerate()`函数和生成器表达式。每种方法均附有示例代码,其中`enumerate()`方法在保证效率的同时代码更简洁。
29 2
|
5天前
|
存储 运维 数据挖掘
Python列表中每个元素前面连续重复次数的数列统计
Python列表中每个元素前面连续重复次数的数列统计
13 1
|
5天前
|
存储 JSON 数据库
Python中列表数据的保存与读取:以txt文件为例
Python中列表数据的保存与读取:以txt文件为例
19 2
|
5天前
|
Python
【Python进阶(三)】——面向对象编程
【Python进阶(三)】——面向对象编程
|
5天前
|
Python
【Python进阶(一)】——异常与错误
【Python进阶(一)】——异常与错误
|
2天前
|
数据采集 数据挖掘 Python
10个python小技巧,优雅地书写人生_python列表遍历奇数偶数
10个python小技巧,优雅地书写人生_python列表遍历奇数偶数
|
3天前
|
存储 索引 Python
【python学习】列表、元组、字典、集合,秋招是不是得到处面试
【python学习】列表、元组、字典、集合,秋招是不是得到处面试
|
5天前
|
存储 机器学习/深度学习 数据可视化
基于Python的数据分组技术:将数据按照1, 2, 3规则分为三个列表
基于Python的数据分组技术:将数据按照1, 2, 3规则分为三个列表
9 1