Skip to content

Latest commit

 

History

History
143 lines (138 loc) · 4.47 KB

列表.md

File metadata and controls

143 lines (138 loc) · 4.47 KB

列表(动态数组)

  • 元素访问

    • Python为访问最后一个列表元素提供了一种特殊语法。通过将索引指定为-1,可让Python返回最后一个列表元素。

      bicycles = ['trek','redline','specialized',4,5]
      print(bicycles[-1])

      这段代码返回5。这种语法很有用,因为你经常需要在不知道列表长度的情况下访问最后的元素。这种约定也适用于其他负数索引。例如,索引-2返回倒数第二个列表元素,索引-3返回倒数第三个列表元素,依此类推。

      补充:列表所存储的数据没有统一要求,可以存放任意基础数据类型

  • 列表的数据形式(数组)

    • 列表是一种动态数组,它可以根据需要自动调整大小。当向列表中添加元素时,Python 会自动为新元素分配内存空间,并更新列表的长度。例如:

      my_list = []
      print(len(my_list))  
      my_list.append(1)
      print(len(my_list))

      这段代码将输出 0 和 1,因为在添加第一个元素后,列表的长度从 0 增加到 1。

      与之相反,静态数组(array)是一种静态数据结构,它的大小在创建时就已经确定且只存在一种数据类型。当向静态数组中添加元素时,如果数组已满,Python 会抛出一个异常。

  • 在列表中添加元素

    • 附加:append()
      my_list = []
      my_list.append(1)
      my_list.append(2)
      my_list.append(3)
      print(my_list)
      这段代码将输出 [1, 2, 3]。
    • 插入:insert()
      my_list = [1, 2, 3]
      my_list.insert(1, 4)
      print(my_list)
      这段代码将输出 [1, 4, 2, 3]。
    • 合并:extend()
      my_list1 = [1, 2, 3]
      my_list2 = [4, 5, 6]
      my_list1.extend(my_list2)
      print(my_list1)
      这段代码将输出 [1, 2, 3, 4, 5, 6]。
    • 补充:+
      my_list1 = [1, 2, 3]
      my_list2 = [4, 5, 6]
      my_list3 = my_list1 + my_list2
      print(my_list3)
      这段代码将输出 [1, 2, 3, 4, 5, 6]。
    • 补充:*
      my_list = [1, 2, 3]
      my_list2 = my_list * 3
      print(my_list2)
      这段代码将输出 [1, 2, 3, 1, 2, 3, 1, 2, 3]。
    • 补充:列表推导式
      my_list = [x for x in range(10)]
      print(my_list)
      这段代码将输出 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]。
  • 删除元素

    • 删除元素:del
      my_list = [1, 2, 3, 4, 5]
      del my_list[0]
      print(my_list)
      这段代码将输出 [2, 3, 4, 5]。
    • 删除元素:pop()
      my_list = [1, 2, 3, 4, 5]
      my_list.pop(0)
      print(my_list)
      这段代码将输出 [2, 3, 4, 5]。
    • 删除元素:remove()
      my_list = [1, 2, 3, 4, 5]
      my_list.remove(1)
      print(my_list)
      这段代码将输出 [2, 3, 4, 5]。
    • 删除元素:clear()
      my_list = [1, 2, 3, 4, 5]
      my_list.clear()
      print(my_list)
      这段代码将输出 []。
  • 组织列表

    • 排序:sort()
      my_list = [5, 2, 3, 4, 1]
      my_list.sort()
      print(my_list)
      这段代码将输出 [1, 2, 3, 4, 5]。
    • 排序:sorted()
      my_list = [5, 2, 3, 4, 1]
      print(my_list,sorted(my_list))
      这段代码将输出 [5, 2, 3, 4, 1] [1, 2, 3, 4, 5]。
    • 反转:reverse()
      my_list = [5, 2, 3, 4, 1]
      my_list.reverse()
      print(my_list)
      这段代码将输出 [1, 4, 3, 2, 5]。 若要恢复对其再次反转即可。
    • 长度:len()
      my_list = [5, 2, 3, 4, 1]
      print(len(my_list))
      这段代码将输出 5。
    • 最大值:max()
      my_list = [5, 2, 3, 4, 1]
      print(max(my_list))
      这段代码将输出 5。
    • 最小值:min()
      my_list = [5, 2, 3, 4, 1]
      print(min(my_list))
      这段代码将输出 1。