Python详解列表

    列表是Python中最基本的数据结构,列表是最常用的Python数据类型,列表的数据项不需要具有相同的类型。列表中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。

一、列表特点

        1.列表元素按顺序有序排列

        2.索引映射唯一的数据(获取元素)下标0开始(正向索引),下标从-1开始(逆向索引)

        3.列表可以存储重复的数据,任意数据类型可以混存。

        4.根据需要动态分配内存于回收内存

二、查询列表元素

        index()函数

lst = ['hello', 'word', 892.5, 85, 85]
print(lst.index('hello',1,3))#在列表下标1—3之间查询

【注】1.如果列表中有N个重复元素,只返回第一次出现元素的下标值。

            2. 如果没有找到列表中的元素;返回:Value Error

三、**切片(获取多个元素)

        1.列表名.[start:stop:step];     start:切点;stop:结点;step:步长;

        2.特点:原列表片段的拷贝;切片的范围[start,stop);step步长默认为1

        3.

step为正数step为负数
[ :stop:step]切片第一个元素默认为列表第一个元素[ :stop:step]切片第一个元素默认为列表最后一个元素
[start: :step]切片最后一个元素默认为列表最后一个元素[start: :step]

切片最后一个元素默认为列表第一个元素

                                                             step为正数  

        <1>.[ :stop:step]

lst = [10, 20, 30, 40, 50, 60, 70, 80, 90]
print(lst[:3:1])

 [10,20,30]

         <2>.[start ::step]

lst = [10, 20, 30, 40, 50, 60, 70, 80, 90]
print(lst[1::2])

[20,40,60,80] 

                                                    step为负数

        <1>[ :stop:step]

lst = [10, 20, 30, 40, 50, 60, 70, 80, 90]
print(lst[:4:-1])

[90,80,70,60] 

         <2>.[start ::step]

lst = [10, 20, 30, 40, 50, 60, 70, 80, 90]
print(lst[6::-2])

[70,50,30,10] 

 四、列表元素存在

        in 或 not in检测

lst = [10, 20, 30, 40, 50, 60, 70, 80, 90]
print(90 in lst)
print(100 not in lst)

True

True 

五、列表元素增加

append( )在列表末位添加一个元素
extend( )末尾至少添加一个元素
insert( )任意位置添加一个元素
切片

任意位置添加至少一个元素(切

去指定位置新列表替换)

        1.append( )

lst = [10, 20, 30]
lst.append(155)
print(lst)

 [10,20,30,155]

        2.extend( ) 

lst = [10, 20, 30]
num = [100,999]
lst.extend(num)
print(lst)

[10,20,30,100,999] 

        3. insert( )

lst = [10, 20, 30]
lst.insert(1,456)
print(lst)

 [10,245,60,30]

        4.切片

lst = [10, 20, 30]
num = ['hello','word']
lst[1:] = num    #lst列表从下标1的位置开始被num列表替换
print(lst)

[10, 'hello', 'word'] 

 六、列表元素的删除

        1.remove( )函数;一次删除一个元素;重复的元素只删除第一次出现的元素;元素不存在时,返回Value Error;

lst = [10, 20, 30,10]
lst.remove(10)
print(lst)

[20,30,10] 

        2.pop()函数;删除索引位置的元素;未找到索引位置的元素时,返回Value Error;如果没有指定索引位置时,默认删除列表的最后一个元素;

lst = [10, 20, 30,55]
lst.pop(1)
print(lst)

lst.pop()
print(lst)

[10,30,55]

[10,30] 

         3.切片操作;一次至少删除一个元素;会产生一个新的列表;用一个空列表就不会产生新列表;

lst = [10, 20, 30,55]
new_lst = lst[1:3]
print(new_lst)

[20,30] 

lst = [10, 20, 30,55]
lst[1:3] = []
print(lst)

[10,55] 

        4.clear( )函数;清空列表

lst = [10, 20, 30,55]
lst.clear()
print(lst)

 [ ]

        5.del函数;删除列表;

lst = [10, 20, 30,55]
del lst

七、修改列表元素

        1.单个元素的修改

lst = [10, 20, 30,55]
lst[2] = 456
print(lst)

[10,456,30,55] 

         2.多个元素修改

lst = [10, 20, 30,55]
lst[1:3] = [100,200,300]
print(lst)

[10, 100, 200, 300, 55] 

八、列表元素排序

sort()函数;默认升序sorted()函数;默认升序
列表名.sort(reverse = True)降序不会产生新列表sorted(列表名,reverse = True)降序会产生新列表
列表名.sort(reverse = False)升序sorted(列表名,reverse = Flase)升序

 

num = [10,56,98,87,56,42]
num.sort()
print(num)

num.sort(reverse = True)
print(num)

[10, 42, 56, 56, 87, 98]
[98, 87, 56, 56, 42, 10]

num = [10,56,98,87,56,42]
new_num = sorted(num)
print(new_num)

new_num = sorted(num,reverse = True)
print(new_num)

[10, 42, 56, 56, 87, 98]
[98, 87, 56, 56, 42, 10] 

九、列表生成式

tu = [i for i in range(1,11)]
print(tu)

new_tu = [i*2 for i in range(1,6)]
print(new_tu)

[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

 [2, 4, 6, 8, 10]

                 hello! 

                        选择就要坚持下去;永不放弃!

                                                                                                --上善如水 ^0^

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值