微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

python基础9---列表

python笔记

1、列表list[ ]

1.1 列表特点:
  • 有序
  • 可以存重复数据
  • 通过索引可以定位唯一的元素,可以往右0开始+1顺序递增索引,也可以往左0-1开始递减索引
  • 任意数据类型都可以存储
1.2 索引列表中的单个元素

index()方法

  • 重复数据索引时只按顺序返回一个数据
  • 如果索引的内容不在列表中,会报错
1.3 索引列表中的多个元素
  • 切片操作:[start:stop:step]
  • 切片范围:[开始,结束),索引步长为step,步长也可以是负数
  • 省略start时认从0开始
  • 如果stop和step都不写是一直到最后,步长认1
# 列表多个元素的索引:切片练习
l1=['hello','stop',99,"hello"]
print("原列表:",l1)
print("切片后的列表:",l1[0:2:1])
print(l1[:2:1])     # 省略start数据时认从0开始
#输出
原列表: ['hello', 'stop', 99, 'hello']
切片后的列表: ['hello', 'stop']
['hello', 'stop']
1.3 列表元素的遍历
  • 就是将列表中的元素依次输出
# 列表的遍历:将列表中的元素依次输出
l1=['hello','stop',99,"hello"]
for l2 in l1:
    print(l2)
1.4 列表的增加操作
  • append():在列表的末尾添加一个元素
  • extend():在列表的末尾可以添加多个元素
  • insert():在列表的任意位置添加一个元素
  • 切片:在列表的任意位置添加多个元素
# 列表的添加操作
l1=["hello","ayh",99,"soa"]
l1.append(188)      #append只能在列表末尾添加一个元素,哪怕添加的是列表也会当成一个元素
print("添加后:",l1)
#输出
添加后: ['hello', 'ayh', 99, 'soa', 188]

l1=["hello","ayh",99,"soa"]
l2=["sss",999]
l1.extend(l2)       #extend可以在列表末尾添加多个元素
print("添加后:",l1)
#输出
添加后: ['hello', 'ayh', 99, 'soa', 'sss', 999]

l1=["hello","ayh",99,"soa"]
l1.insert(1,90)         #insert是在1的索引位置添加元素90
print(l1)
#输出
['hello', 90, 'ayh', 99, 'soa']

l1=["hello","ayh",99,"soa"]
l2=["sss",999]
l1[1:]=l2       #把l2的元素赋值替换掉l1切片的范围
print(l1)
#输出
l1=["hello","ayh",99,"soa"]
l2=["sss",999]
l1[1:]=l2       #把l2的元素赋值替换掉l1切片的范围
print(l1)
1.5 列表的删除操作
  • remove():一次只能删除一个元素,如果有重复的只按顺序删第一个,元素不存在的时候报错
  • pop():删除一个指定索引位置上的元素,元素不存在的时候报错,不指定索引的时候认删最后一个
  • 切片:仅保留切片后的元素数据
  • clear():清空列表元素
  • del:删除列表对象,清空后输出列表对象会报错
# 列表的删除操作
l1=["hello","ayh",99,"soa",99]
l1.remove(99)       #remove一次只能删除一个元素,有重复元素的按顺序只删除一个
print(l1)
#输出
['hello', 'ayh', 'soa', 99]

l1=["hello","ayh",99,"soa",99]
l1.pop(0)       #pop删除一个指定索引位置的元素
print(l1)
l1=["hello","ayh",99,"soa",99]
l1.pop()        #如果不指定索引位置,删除最后一个元素
print(l1)
#输出
['ayh', 99, 'soa', 99]
['hello', 'ayh', 99, 'soa']

l1=["hello","ayh",99,"soa"]
print("切片后的列表:",l1[1:3:1])      #切片保留元素,间接删除操作
#输出
切片后的列表: ['ayh', 99]

l1=["hello","ayh",99,"soa"]
l1.clear()          #clear清空列表元素
print(l1)
l1=["hello","ayh",99,"soa"]
del l1      #删除列表对象,删除后再打印输出列表会报错
print(l1)
#输出
[]
Traceback (most recent call last):
  File "<input>", line 6, in <module>
NameError: name 'l1' is not defined
1.6 列表的修改操作
# 列表的修改
l1=["hello","ayh",99,"soa"]
l1[1]="word"        #把索引1位置的元素替换成“word”
print(l1)

l1=["hello","ayh",99,"soa"]
l1[1:3:1]=[20,90,10]        #切片更换元素
print(l1)
1.7 列表的排序
  • sort():认升序,降序用sort(reverse=True),改变原列表顺序
  • sorted():只展示排序,不改变原列表顺序
# 列表的排序
l1=[90,12,54,23,100]
l1.sort()       #认升序排序
print(l1)
#输出
[12, 23, 54, 90, 100]

l1=[90,12,54,23,100]
l1.sort(reverse=True)       #降序
print(l1)
l1.sort(reverse=False)       #升序
print(l1)
#输出
[100, 90, 54, 23, 12]
[12, 23, 54, 90, 100]

l1=[90,12,54,23,100]
print(sorted(l1))       #只展示排序,不改变实际l1顺序
print(l1)
#输出
[12, 23, 54, 90, 100]
[90, 12, 54, 23, 100]

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐