列表的创建
使用 [ ] 把数据包含起来,便可以创建一个列表了。
列表的打印
使用内置函数print() 便可打印整个列表里的数据”
>>> print(name)
[“damao”, 30, “ermao”]当然也可以打印列表的某个下标的数据:
>>> print(name[0])
damao也可以分片打印列表的某段下标的数据
>>> print(name[0:2])
[‘damao’, 30] #注意,没有打印name[2]的数据:)如果想要分别打印列表里的每个数据,只需要一个for就可以搞定:
>>> for each in name:
print(each)
damao
30
ermao当然也可以直接打印出列表内数据的个数:
>>> print(len(name))
3
列表的扩展
我们可以在列表末尾追加一个任意数据类型数据:
>>> name.append([“daoluan”, 666])
>>> print(name)
[‘damao’, 30, ‘ermao’, [‘daoluan’, 666]]也可以在列表末尾追加一个列表里的所有数据:
>>> name.extend([“sanmao”, 10, “simao”])
>>> print(name)
[‘damao’, 30, ‘ermao’, [‘daoluan’, 666], ‘sanmao’, 10, ‘simao’]
#注意,append和entend这两个方法看起来有些类似,但实际上是不同的。append只接受一个参数,但是这个参数可以是任意数据类型,比如列表和元组等,而且只是将这个数据追加到原列表后面独立存在。
extend也是只接受一个参数,不同的是这个参数必须是一个列表,而且会把这个列表的每个元素拆分出来,依次追加到原列表后面。当然也可以在指定位置增加一个任意数据类型数据(append的既视感):
/# 第一个参数为指定的列表下标,第二个参数为增加的数据
>>> name.insert(3, 20)
>>> print(name)
[‘damao’, 30, ‘ermao’, 20, [‘daoluan’, 666], ‘sanmao’, 10, ‘simao’]
列表的删除:
删除列表末尾的一个数据:
>>> name.pop()
>>> print(name)
[‘damao’, 30, ‘ermao’, 20, [‘daoluan’, 666], ‘sanmao’, 10]也可以删除列表指定的某一个数据:
>>> name.remove(“sanmao”)
>>> print(name)
[‘damao’, 30, ‘ermao’, 20, [‘daoluan’, 666], 10]或者删除列表的某个下标的数据:
>>> 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()
原地排序:
>>> fruit = [“banana”, “pear”, “orange”, “apple”]
>>> fruit.sort()
>>> print(fruit)
[‘apple’, ‘banana’, ‘orange’, ‘pear’]
# sort() 方法可以在原列表的基础上进行排序,同时改变原列表的顺序。复制排序:
>>> 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)