Python中列表的操作

2020-01-17 16:22:30 浏览数 (1)

列表的基本详情

  1. 用中括号包含内容
  2. 可修改的数据类型
  3. 支持嵌套
  4. 支持索引、切片、乘加运算、成员检查、长度、最小值、最大值

列表赋值到变量

代码语言:javascript复制
list1 = ['hello', 'world']

列表中追加内容

代码语言:javascript复制
list1 = ['hello', 'world']
list1.append('!')           # 只能追加到列表的尾部

列表中插入内容

代码语言:javascript复制
list1 = ['hello', 'world']
list1.insert(1,',')         # 指定索引位置插入内容

列表与列表的嵌套

代码语言:javascript复制
list1 = [1, 2, 3, [11, 22, 33]]

删除列表中指定元素

代码语言:javascript复制
list1 = ['a', 'b', 'c', 1, 2, 3, [11, 22, 33]]
list1.remove('a')

删除列表中索引内容

方法1

代码语言:javascript复制
list1 = ['a', 'b', 'c', 1, 2, 3, [11, 22, 33]]
list1.pop(2)        # 有返回值

方法2

代码语言:javascript复制
list1 = ['a', 'b', 'c', 1, 2, 3, [11, 22, 33]]
del list1[1]        # 无返回值

删除整个列表

代码语言:javascript复制
list1 = ['a', 'b', 'c', 1, 2, 3, [11, 22, 33]]
del list1

清空整个列表

代码语言:javascript复制
list1 = ['a', 'b', 'c', 1, 2, 3, [11, 22, 33]]
list1.clear()

打印列表长度

代码语言:javascript复制
list1 = ['a', 'b', 'c', 1, 2, 3, [11, 22, 33]]
print(len(list1))

打印列表索引位置内容

代码语言:javascript复制
list1 = ['a', 'b', 'c', 1, 2, 3, [11, 22, 33]]
print(list1[0])

打印列表切片位置内容

代码语言:javascript复制
list1 = ['a', 'b', 'c', 1, 2, 3, [11, 22, 33]]
print(list1[0:3])

打印列表指定内容索引

代码语言:javascript复制
list1 = ['a', 'b', 'c', 1, 2, 3, [11, 22, 33]]
print(list1.index('a'))         # 若内容不在列表中,则会报错

打印列表指定内容次数

代码语言:javascript复制
list1 = ['a', 'b', 'c', 1, 2, 3, [11, 22, 33]]
print(list1.count('a'))

列表的排序

代码语言:javascript复制
list1 = [1, 3, 44, 4, 33, 11, 2, 5]
list1.sort()                    # 正向排序
list1.sort(reverse=True)        # 反向排序
list1.reverse()                 # 整个列表倒序

列表中索引内容更改

代码语言:javascript复制
li = ['太白','李白','百岁山']
print(li[2].replace('百', '白'))  # replace并不会直接更改列表内容,并且不支持数字的替换

列表中索引更改

代码语言:javascript复制
list1 = ['太白','李白','百岁山']
list1[0] = '太黑'

列表中切片更改

代码语言:javascript复制
list1 = ['太白','李白','百岁山']
list1[0:3] = '太黑','太白','黑白棋'

最小元素添加到列表

代码语言:javascript复制
list1 = []
list1.extend('张无忌') # 会把'张无忌'三个字拆开当成三个元素加入到列表中,列表长度是3;该方法支持迭代添加

列表转换字符串

代码语言:javascript复制
list1 = ['zhangsan', 'lisi', 'wangwu']
str1 = ','.join(list1)

注意事项:列表中所有的增删改操作都是直接改原内存地址,并不需要通过重新赋值;元组属于特殊的列表(只读列表),除了增删改操作,其他列表支持的操作元组都支持。

0 人点赞