python笔记9-数据类型:列表(List)

列表取值:索引

List1 = ['Google', 'Runoob', 'Taobao', 'TanMao', 'JingDong']

print("取第2个值", List1[1])
print("取最后一个值", List1[-1])

输出结果

取第2个值 Google
取最后一个值 JingDong

列表取值:切片

List1 = ['Google', 'Runoob', 'Taobao', 'TanMao', 'JingDong']

print("从第2个开始取到第5个", List1[1:5])
print("从第2个开始取到第5个,步长为2", List1[1:5:2])
print("从倒数第2个开始取到第5个", List1[-2:5])

输出结果

从第2个开始取到第5个 ['Runoob', 'Taobao', 'TanMao', 'JingDong']
从第2个开始取到第5个,步长为2 ['Runoob', 'TanMao']
从倒数第2个开始取到第5个 ['TanMao', 'JingDong']

列表更新:赋值

list = ['physics', 'chemistry', 1997, 2000]
list[2] = 1998

输出结果

['physics', 'chemistry', 1998, 2000]

列表更新:新增

list1 = ['Runoob']
list1.append('Taobao')           # append()在列表后方新增一个值
print(list1)

list2 = ['TanMao', 'JingDong']   # extend()在列表后方新增多个值
list1.extend(list2)
print(list1)

输出结果

['Runoob', 'Taobao']
['Runoob', 'Taobao', 'TanMao', 'JingDong']

列表更新:插入

List1 = ['Google', 'Taobao', 'TanMao', 'JingDong']
List1.insert(1, 'Runoob')
print(List1)

输出结果

['Google', 'Runoob', 'Taobao', 'TanMao', 'JingDong']

列表更新:删除

list1 = ['Google', 'Runoob', 'Taobao', 'TanMao', 'JingDong']

list1.remove('Google')  # 删除指定元素
print(list1)

del list1[0]            # 按索引删除
print(list1)

list1.pop(0)            # 按索引删除
print(list1)

list1.pop()            # 删除最后一个元素
print(list1)

输出结果

['Runoob', 'Taobao', 'TanMao', 'JingDong']
['Taobao', 'TanMao', 'JingDong']
['TanMao', 'JingDong']
['TanMao']

列表更新:清空

List1 = ['Google', 'Runoob', 'Taobao', 'TanMao', 'JingDong']
List1.clear()

print("清空:", List1)

输出结果

清空: []

列表更新:排序

list1 = ['1', '2', '4', '3']

list1.sort()       # 按元素顺序排序
print(list1)

list1.reverse()    # 反向排序
print(list1)

输出结果

['1', '2', '3', '4']
['4', '3', '2', '1']

列表更新:高级排序

list1 = ['aardvark', 'acme', 'abalone', 'adds', 'aerate']
list1.sort(key=len)         # 指定关键字,判断关键字的属性
print(list1)

list2 = ['aardvark', 'acme', 'abalone', 'adds', 'aerate']
list2.sort(reverse=True)    # 指定关键字,判断关键字的真假
print(list2)

输出结果

['acme', 'adds', 'aerate', 'abalone', 'aardvark']
['aerate', 'adds', 'acme', 'abalone', 'aardvark']

列表复制:浅拷贝(copy.copy)

List1 = ["1", "2", "3"]
List2 = List1
List2[2] = "4"

print("List1打印:", List1)
print("List2打印:", List2)
print("List1内存地址:", id(List1))
print("List2内存地址:", id(List2))

输出结果

List1打印: ['1', '2', '4']
List2打印: ['1', '2', '4']
List1内存地址: 2377288648704
List2内存地址: 2377288648704

列表复制:深拷贝(copy.deepcopy)

import copy

List1 = ["1", "2", "3"]
List2 = copy.deepcopy(List1)
List2[2] = "4"

print("List1打印:", List1)
print("List2打印:", List2)
print("List1内存地址:", id(List1))
print("List2内存地址:", id(List2))

打印结果

List1打印: ['1', '2', '3']
List2打印: ['1', '2', '4']
List1内存地址: 2043463271104
List2内存地址: 2043463271424

其他操作

操作 表达式 结果
长度 len([1, 2, 3]) 3
相加 [1, 2, 3] + [4, 5, 6] [1, 2, 3, 4, 5, 6]
相乘 ['Hi!'] * 4 ['Hi!', 'Hi!', 'Hi!', 'Hi!']
资格检查 3 in [1, 2, 3] True
迭代 for x in [1, 2, 3]: print x 1 2 3
最大值 max([1, 2, 3]) 3
最小值 min[1, 2, 3]) 1
元素出现次数统计 x = [[1, 2], 1, 1, [2, 1, [1, 2]]]
print(x.count(1))
print(x.count([1, 2]))
2
1
元素第一次出现时的索引 list1 = ['a', 'b', 'c', 'b']
print(list1.index('b'))
1

拓展

序列:列表、元祖、字符串。列表可变,元祖和字符串不可变
通用操作:索引、切片、资格检查、长度、最大值、最小值
可变操作:赋值、更新、删除

posted @ 2024-05-29 23:09  捕者  阅读(13)  评论(0)    收藏  举报