python学习(二)——列表

列表的创建

使用 [ ] 把数据包含起来,便可以创建一个列表了。

  1. [ ] 可以不包含任何数据,则表示创建一个空列表
    >>> name = []

  2. [ ] 也可以包含多种数据类型的数据
    >>> name = [“damao”, 30, “ermao”]

列表的打印

  1. 使用内置函数print() 便可打印整个列表里的数据”
    >>> print(name)
    [“damao”, 30, “ermao”]

  2. 当然也可以打印列表的某个下标的数据:
    >>> print(name[0])
    damao

  3. 也可以分片打印列表的某段下标的数据
    >>> print(name[0:2])
    [‘damao’, 30] #注意,没有打印name[2]的数据:)

  4. 如果想要分别打印列表里的每个数据,只需要一个for就可以搞定:
    >>> for each in name:
    print(each)
    damao
    30
    ermao

  5. 当然也可以直接打印出列表内数据的个数:
    >>> print(len(name))
    3

列表的扩展

  1. 我们可以在列表末尾追加一个任意数据类型数据:
    >>> name.append([“daoluan”, 666])
    >>> print(name)
    [‘damao’, 30, ‘ermao’, [‘daoluan’, 666]]

  2. 也可以在列表末尾追加一个列表里的所有数据:
    >>> name.extend([“sanmao”, 10, “simao”])
    >>> print(name)
    [‘damao’, 30, ‘ermao’, [‘daoluan’, 666], ‘sanmao’, 10, ‘simao’]
    #注意,append和entend这两个方法看起来有些类似,但实际上是不同的。append只接受一个参数,但是这个参数可以是任意数据类型,比如列表和元组等,而且只是将这个数据追加到原列表后面独立存在。
    extend也是只接受一个参数,不同的是这个参数必须是一个列表,而且会把这个列表的每个元素拆分出来,依次追加到原列表后面。

  3. 当然也可以在指定位置增加一个任意数据类型数据(append的既视感):
    /# 第一个参数为指定的列表下标,第二个参数为增加的数据
    >>> name.insert(3, 20)
    >>> print(name)
    [‘damao’, 30, ‘ermao’, 20, [‘daoluan’, 666], ‘sanmao’, 10, ‘simao’]

列表的删除:

  1. 删除列表末尾的一个数据:
    >>> name.pop()
    >>> print(name)
    [‘damao’, 30, ‘ermao’, 20, [‘daoluan’, 666], ‘sanmao’, 10]

  2. 也可以删除列表指定的某一个数据:
    >>> name.remove(“sanmao”)
    >>> print(name)
    [‘damao’, 30, ‘ermao’, 20, [‘daoluan’, 666], 10]

  3. 或者删除列表的某个下标的数据:
    >>> del(name[4])
    >>> print(name)
    [‘damao’, 30, ‘ermao’, 20, 10]
    #注意,de()函数支持列表分片删除,同样的,也支持删除整个列表。

列表的合并:

只需要像I + I + I = III一样,就可以合并多个列表:
>>> mao = name + [20, “ermao”] + [30, “damao”]
>>> print(mao)
[‘damao’, 30, ‘ermao’, 20, 10, 20, ‘ermao’, 30, ‘damao’]

列表的排序:

首先,列表里的每个元素类型相同才可以进行排序,对此我们可以选择手写排序算法,也可以选择Pythoy提供的更简便且强大的的方法:sort()和sorted()

  1. 原地排序:
    >>> fruit = [“banana”, “pear”, “orange”, “apple”]
    >>> fruit.sort()
    >>> print(fruit)
    [‘apple’, ‘banana’, ‘orange’, ‘pear’]
    # sort() 方法可以在原列表的基础上进行排序,同时改变原列表的顺序。

  2. 复制排序:
    >>> nums = [23, 12, -34, 0, 101, 2]
    >>>newNums = sorted(nums)
    >>> print(newNums)
    [-34, 0, 2, 12, 23, 101]
    >>> print(nums)
    [23, 12, -34, 0, 101, 2]
    # sorted() 函数通过复制排序可以对几乎任何数据结构排序,同时返回一个新的排序后的数据结构,而且不会改变原数据结构的序列。
    #注意,不管使用sort()还是使用sorted(),默认都是升序排序。如果想按照降序排序,只要传入 reverse = True 参数就可以啦,比如 fruit.sort(reverse = True) 或者 newNums = sorted(nums, reverse = True)

文章目录
  1. 1. 列表的创建
  2. 2. 列表的打印
  3. 3. 列表的扩展
  4. 4. 列表的删除:
  5. 5. 列表的合并:
  6. 6. 列表的排序:
|