资讯专栏INFORMATION COLUMN

python基础知识之列表

sorra / 710人阅读

摘要:列表表现形式为,里面的元素之间用逗号隔开,元素可以是任意类型,相比于字符串,列表可以存储各种数据类型,而且可以存储大量数据列表的主要操作就是增删改查增首先创建一个列表会在列表末尾处添加指定元素输出会在指定索引处插入新元素插入输出插入当指定的

列表

表现形式为[],里面的元素之间用逗号隔开,元素可以是任意类型,相比于字符串,列表可以存储各种数据类型,而且可以存储大量数据
列表的主要操作就是增删改查:

增:append insert extend
首先创建一个列表:lis = [1,"a",(1,2,3),"hello"]

append会在列表末尾处添加指定元素
lis.append("aaa")
print(lis)
输出:[1, "a", (1, 2, 3), "hello", "aaa"]

insert会在指定索引处插入新元素
lis.insert(1,"插入")
print(lis)
输出:[1, "插入", "a", (1, 2, 3), "hello"]

当指定的索引超出列表长度时 并不会报错,此时会在末尾处插入元素
lis.insert(100,"越界不报错")
print(lis)
输出:[1, "a", (1, 2, 3), "hello", "越界不报错"]

extend会以迭代的方式插入元素,就是把要插入的内容拆分成单个元素再插入
lis.extend("abc")
print(lis)
输出:[1, "a", (1, 2, 3), "hello", "a", "b", "c"]

但是只会拆分第一级元素,从下面可以看出"hello"本身并没有被拆分
lis.extend(["a","bc","hello"])
print(lis)
输出:[1, "a", (1, 2, 3), "hello", "a", "bc", "hello"]
删: pop remove del clear
lis = [1,"a",(1,2,3),"hello"]

pop会按索引去删除,并返回被删除的元素,如果不给索引则默认删除最后一个
res = lis.pop()

输出:[1, "a", (1, 2, 3)]

remove会按照元素值去删除,没有返回值,如果元素不存爱则会报错
lis.remove("a")
print(lis)
输出:[1, (1, 2, 3), "hello"]

del 和pop类似,也是按照索引删除元素,但是del可以直接删除整个列表
del lis[3]
print(lis)
输出:[1, "a", (1, 2, 3)]

del还可以用切片的方式删除元素,注意灵活运用
del lis[0:3:2]
print(lis)
输出:["a", "hello"]

clear 方法则会清空列表
lis.clear()
改:列表的修改方式很简单,直接按索引修改
lis = [1,"a",(1,2,3),"hello"]

lis[2] = "修改后的元素"
print(lis)
输出:[1, "a", "修改后的元素", "hello"]

还可以按切片修改,如果用切片的方式修改列表时,会删除指定索引的元素并且将新的值拆分成元素再添加到该位置
lis[1:3] = "test" 
print(lis)
输出:[1, "t", "e", "s", "t", "hello"]

但是拆分时只会拆分第一级元素
lis[1:3] = [[1,2],1,"a"]
print(lis)
输出:[1, [1, 2], 1, "a", "hello"]
查: 列表的查询除了可以用索引和切片的方式外还可以用for循环的方式
lis = [1,"a",(1,2,3),"hello"]
for i in lis:
    print(i,end=" ")
输出:1 a (1, 2, 3) hello     
列表的其他常用方法:

lis.count() 统计指定元素在列表中出现的次数

lis.index()返回列表中第一次出现给定值的索引位置没有则会报错

lis.reverse()将列表中的元素反转

lis.sort() 对列表中的元素进行排序,但如果元素之间无法比较则会报错

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/42521.html

相关文章

  • Python基础控制结构

    摘要:基础之控制结构学习目标代码块与缩进条件语句语句语句的嵌套断言循环循环循环中断循环控制语句综合嵌套列表解析式基础相关链接学习目标是简洁易学面向对象的编程语言。 Py...

    liaosilzu2007 评论0 收藏0
  • Python基础(三)字典

    摘要:这种数据结构包含以下几种常见的操作向关联数组添加键值对从关联数组内删除键值对修改关联数组内的键值对根据已知的键寻找值字典问题是设计一种能够具备关联数组特性的数据结构。 定义 Python中有一个叫作dictionary的对象类型,翻译过来就是字典,用dict表示。 创建字典 创建空的字典 >>> mydict = {} >>> mydict {} >>> type(mydict) >...

    snifes 评论0 收藏0
  • python基础知识元组

    摘要:元组运算符可与使用加号来连接两个元组输出为也可以使用乘号输出为当然也可以用成员运算符通用地可以使用删除元组元组相关内置函数计算元组元素个数。返回元组中元素最大值返回元组中元素最小值。可迭代对象将可迭代对象转换为元组。 元组是什么? 你可以把它看作是只读的列表,因为元组不可改变,但是要注意,如果元组中含有列表元素,则该列表元素是可变的,通俗地讲就是儿子不可变,但是孙子可变 由于元组不可...

    ACb0y 评论0 收藏0
  • Python3列表解析任意迭代、表达式、条件和嵌套循环等特性详解

    摘要:概述列表解析即利用现有的可迭代对象创建新的列表的语法,其过程完全可以用循环复刻,但其解析效率比循环快一些,缺点也很明显,即不适合用于大数据迭代对象的解析,因为会占用大量内存,导致。当然列表解析让人爱不释手的另一个原因就是简洁。 概述 列表解析即利用现有的可迭代对象创建新的列表的Python语法,其过程完全可以用for循环复刻,但其解析效率比for循环快一些,缺点也很明显,即不适合用于大数据迭...

    番茄西红柿 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<