Python语言基础之数据类型-List(3-3)

List 列表是Python中的一种序列型数据结构,其中的每个元素都有自己的位置,称为 “下标” 或 “ 索引”。列表中不同的下标指向不同的元素。第一个下标从 0 开始,最后一个下标值是列表的元素个数减1,也可以是 -1。
定义列表使用成对的方括号 “ [ ] ” ,其中元素之间使用逗号 “,”分隔,列表中各个元素的数据类型可以不同,列如:

list1 = [‘a’, ‘b’, ‘c’, 1, 2]
list2 = [1, 2, 3, 4, 5]

1、访问列表中的元素

需要使用下标,例如:list1[1] 表示取得 list1 列表中的第二个元素,即字符串 ‘b’ ,获取列表中连续的元素可以使用下标范围的方式。(注:Python中所有基于范围的语法都遵循 “左闭右开” 原则,即起始下标对应的元素被包含在内,范围内的最后一个元素是结束下标对应的元素之前的元素。
因此,list2[2] 对应的元素是 3 ,使用 list2[1:3] 方式只获取到 2和3 两个元素。获取最后的元素可以如下操作:

list1 = ['a', 'b', 'c', 1, 2]
list2 = [1, 2, 3, 4, 5]

print(list1[1])        # b
print(list2[2])        # 3
print(list2[1:3])      # [2, 3]
print(list2[-2:])      # [4, 5]

2、修改列表中元素的值

可以通过为对应下标的元素重新赋值的方法实现,如下:

list2 = [1, 2, 3, 4, 5]

list2[1] = 6
print(list2[1])               # 6
print(list2)                  # [1, 6, 3, 4, 5]
list2[1:3] = [7, 8]        # 遵循 “左闭右开” 原则 ,将第2、3个元素修改成指定的 7、8
print(list2)                  # [1, 7, 8, 4, 5]

list1 = ['a', 'b', 'c', 1, 2]
 # 实际上修改的是第 4 个元素,当新值是 'd', 'e', 'f' 三个字符串,因此最终结果是将第 4 个元素替换成这三个新的元素
list1[3:4] = ['d', 'e', 'f']       
print(list1)                #  ['a', 'b', 'c', 'd', 'e', 'f', 2] 

# 将最后一个元素修改成 ’g‘ 
list1[-1:] = ['g']
print(list1)          # ['a', 'b', 'c', 'd', 'e', 'f', 'g']

3、删除列表值、清空列表、删除列表

可以使用下标范围的方法删除列表中的元素、清空列表,如下:

list1[3:6] = []        # 删除列表第4 到 第6个元素,即下标为3 到 5的元素
print(list1)       # ['a', 'b', 'c', 'g']

list1[:] = []        # 清除报表中的所有元素
print(list1)        # []

# 删除列表后再访问,报错信息显示名称list1未定义
del list1
print(list1)     #  NameError: name 'list1' is not defined

列表支持嵌套,如下:

list3 = [11, 22, 33]
list4 = ['aa', 'bb', 'cc']
x = [list3, list4]
print(x)    # [[11, 22, 33], ['aa', 'bb', 'cc']]

与字符串相似,Python的常见运算符对列表也起作用,+ 、*、in等运算符对列表的作用如下所示:
在这里插入图片描述

4、列表函数

Python将可以用于列表的函数分为两类,一类是对列表本身进行操作,一类是对列表对象进行操作。

4.1 对列表本身进行操作的函数
在这里插入图片描述

    line = [1, 2, 3, 4, 5]
    print(len(line))     # 5
    print(max(line))     # 5
    print(min(line))     # 1

4.2 对列表对象进行操作
在这里插入图片描述

line1 = ['a', 'b', 'c']
line1.append('d')         #列表末尾添加新元素
print(line1)     # ['a', 'b', 'c', 'd']

line2 = [1, 2, 3, 2, 2]      # 统计列表中特定元素出现的次数
print(line2.count(2))     # 3    ,元素 2 出现 3 次

a = ['a', 'b', 'c']
b = [1, 2, 3]
a.extend(b)    # 列表末尾一次性追加另一个序列中的多个值
print(a)      #  ['a', 'b', 'c', 1, 2, 3]
print(a.index('b'))    # 1   ,元素’b‘ 在列表中第一次出现是在下标为 1 的位置

a.insert(2, 'abc')     # 在列表指定位置插入一个元素,在第 2 个元素后插入了一个元素
print(a)      # ['a', 'b', 'abc', 'c', 1, 2, 3]

a.pop(3)     # 移除一个元素,默认移除末尾的元素,这里第 3 个元素后的一个元素被删除了
print(a)      # ['a', 'b', 'abc', 1, 2, 3]

c = [1, 2, 2, 4, 5, 4]
c.remove(4)
print(c)    # [1, 2, 2, 5, 4]   移除列表中某个值的第一个匹配项

c.reverse()
print(c)     # [4, 5, 2, 2, 1]  列表中所有元素反向排列

d = c.copy()
print(d)      #  [4, 5, 2, 2, 1]  复制一个列表

d.clear()
print(d)     # []    清空列表
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值