Python标准数据类型之列表(List)详解

首页 » Python » Python标准数据类型之列表(List)详解

Python中的list(列表)

List(列表) 是 Python 中使用最频繁的数据类型。列表可以完成大多数集合类的数据结构实现。列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表(所谓嵌套)。列表是写在方括号[ ]之间,用逗号分隔开的元素列表。和字符串一样,列表同样可以被索引和截取,这通常叫做切片,列表被截取后返回一个包含所需元素的新列表。列表截取的语法格式和字符串一样:变量[头下标:尾下标:步长]--不包括尾下标

list = [ 'salary', 12000 , 2.23, 'e1yu', 70.2 ]
tinylist = [123, 'e1yu']
 #取值采用切片操作
print (list)            # 输出完整列表
print (list[0])         # 输出列表中索引为0,也就是第一个元素
print (list[1:3])       # 从第二个开始输出到第三个元素
print (list[2:])        # 输出从第三个元素开始的所有元素
print (list[-5:-1])     #也可以从后往前数,-1,-2....前后位置不要颠倒了,否则取到的是空列表
print (tinylist * 2)    # 输出两次列表
print (list + tinylist) # 连接列表

同Python字符串不一样的是,列表中的元素是可以随意更改的:

a=["e1yu",'abcd','efg']
a[1]=1000   #索引值为1的值改为1000,就是'abcd'

Python中的列表你需要牢记以下几点:

  • List写在方括号之间,元素用逗号隔开。
  • 和字符串一样,list可以被索引和切片,并且索引从0开始。
  • List可以使用+操作符进行拼接。
  • List中的元素是可以改变的。

Python 列表的第三个参数是截取的步长,以下实例在索引 1 到索引 4 的位置并设置为步长为 2(间隔一个位置),同理步长为3(间隔2个位置)来截取字符串:

a=["z","j","j","1","8","s","u","i",".","t","o","p"]
print(a[1:7:2])  #返回"j","1","s"

Python中的序列操作

列表就是一个序列,序列是Python中最基本的数据结构。序列中的每个元素都分配一个数字 – 它的位置,或索引。第一个索引是0,第二个索引是1,依此类推。同理,从后往前取值的话,最右边索引是-1开始,右边第二个-2,以此类推。Python有6个序列的内置类型,但最常见的是列表和元组。序列都可以进行的操作包括索引,切片,加,乘,检查成员。

append()方法

我们可以使用append()方法来向列表中添加字符串,默认是在末尾添加的,如下所示:

list1=["e1yu","url",'salary',10000,20000,30000]
list1.append("鳄鱼教程","最详细的教程")
print(list1)  #append()函数,默认加在末尾

insert( )方法

我们可以使用insert( )方法可以向固定的位置插入,用法:

list = ['salary', 12000, 2.23, 'e1yu', 70.2]

list.insert(1,'zjj') #第一个参数为索引值,就是插入的位置
list[1]='zjjyongyuan18sui' #更改索引值为1的字符串
list.remove(12000) #采用remove( )方法删除值

print(list)

del 删除

同样你也可以使用del 语句来删除列表中的某个元素,如下实例:

del list1[0] #list1即为上面的列表,直接就把"e1yu"删掉了

pop()方法

也可以使用pop()方法,pop不加参数的情况下会删除最后一个索引的值,代码参考:

list = ['salary', 12000, 2.23, 'e1yu', 70.2]
list.pop() #默认情况下,pop会删除最后一个值
list.pop(1) #同样也是可以设置索引,来删除固定的值
print(list)

index( )方法

index ( )方法会返回索引值

list = ['salary', 12000, 2.23, 'e1yu', 70.2]
print(list.index(12000)) #返回的是12000的索引值
print(list[list.index(12000)]) #那么就可以使用这种方法取值

clear( )方法

列表里面也可以存在重复值,那么可以:

list = ['salary', 12000, 2.23, 'e1yu', 70.2,70.2,70.2]
print(list.count(70.2)) #查看70.2值有几个
list.clear()  #清空列表
print(list)  #返回空列表

那么我们在看一下下面的几个方法:

list = ['salary', '12000', '2', 'e1yu']
list.reverse() #列表反转
list.sort() #对列表进行排序,默认,特殊字符、数字、大写字符、小写的顺序,但是列表中只能是str类型,才可以排序
list.extend(list_1) #扩展,就是把list_1加入到list里面
list_1=list.copy() #把list列表copy复制给list_1
print(list_1)
print(list) #两者结果一样

list列表可以嵌套,使用嵌套列表即在列表里创建其它列表,就是列表里面在加一个列表,例如:

list1=['e1yu','abc',['单身狗','鳄鱼教程'],'123.123']
list1[2] #第二个是一个列表,所以会输出一个列表
print(list1[2][0]) #这种就是返回第二个列表里面第一个元素

Python关于列表的一些内置函数方法

Python中的列表通常可以使用以下方法,其中有的方法我们呢前面已经介绍过了:

方法 说明
append(obj) 在列表末尾添加新的对象
count(obj) 统计某个元素在列表中出现的次数
extend(seq) 在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
index(obj) 从列表中找出某个值第一个匹配项的索引位置
insert(index, obj) 将对象插入列表
pop([index=-1]) 移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
remove(obj) 移除列表中某个值的第一个匹配项
reverse() 反向列表中元素
sort(key=None,reverse=False) 对原列表进行排序
clear() 清空列表
copy() 复制列表

基本上有关列表的函数或者方法就这么多,需要特别注意copy()方法,可参考:深拷贝和浅拷贝这篇文章,如果不理解可以先略过,接着往下学习。

未经允许不得转载:作者:鳄鱼君, 转载或复制请以 超链接形式 并注明出处 鳄鱼君
原文地址:《Python标准数据类型之列表(List)详解》 发布于2019-12-05

分享到:
赞(1) 赏杯咖啡

评论 抢沙发

3 + 8 =


文章对你有帮助可赏作者一杯咖啡

支付宝扫一扫打赏

微信扫一扫打赏

Vieu4.6主题
专业打造轻量级个人企业风格博客主题!专注于前端开发,全站响应式布局自适应模板。
切换注册

登录

忘记密码 ?

您也可以使用第三方帐号快捷登录

Q Q 登 录
微 博 登 录
切换登录

注册