列表的基本操作 - python3

列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储、修改等操作

有点枯燥请谅解 -

定义列表

names = ["jimmy", "John", "Mike", "alex"]

通过下标访问列表中的元素,下标从0开始计数

names [0]      #正数即代表从左往右数
>>> jimmy

names [1] 
>>> John 

names [-1]     #负数即代表从右往左数
>>> alex

names [-2]
>>> Mike 

切片:取多个元素


names = ["jimmy", "John", "Mike", "alex", "Rain", "Tom", "Amy"]

names[1:4]  #取下标1至下标4之间的数字,包括1,不包括4
>>> ["John", "Mike", "alex",]

names[1:-1] #取下标1至-1的值,不包括-1
>>> ["John", "Mike", "alex", "Rain", "Tom"]

names[:3] #如果是从头开始取,0可以忽略,跟上句效果一样
>>> ["jimmy", "John", "Mike"]

names[3:] #如果想取最后一个,必须不能写-1,只能这么写
["alex", 'Rain', 'Tom', 'Amy'] 

names[3:-1] #这样-1就不会被包含了
>>> ["alex", "Rain", "Tom"]

names[0::2] #后面的2是代表,每隔一个元素,就取一个
>>> ['jimmy', 'Mike', 'Rain', "Amy"]  

names[::2] #和上句效果一样
>>>['jimmy', 'Mike', 'Rain', "Amy"] 

追加元素

names = ["jimmy", "John", "Mike", "alex", "Rain", "Tom"]

names.append("我是新来的")

>>> ["jimmy", "John", "Mike", "alex", "Rain", "Tom","我是新来的"]

插入

names = ["jimmy", "John", "Mike", "alex", "Rain", "Tom"]

names.insert(2,"强行从Mike前面插入")

>>> ["jimmy", "John", "强行从Mike前面插入", "Mike", "alex", "Rain", "Tom"]

names.insert(5,"从eric后面插入试试新姿势")

["jimmy", "John", "强行从Mike前面插入", "Mike", "alex", "从alex后面插入试试新姿势", "Rain", "Tom"]

修改

names = ["jimmy", "John", "强行从Mike前面插入", "Mike", "alex", "从alex后面插入试试新姿势", "Rain", "Tom"]

names[2] = "该换人了"

>>> ["jimmy", "John", "该换人了", "Mike", "alex", "从alex后面插入试试新姿势", "Rain", "Tom"]

删除

names = ["jimmy", "John", "强行从Mike前面插入", "Mike", "alex", "从eric后面插入试试新姿势", "Rain", "Tom"]

del names[2]

>>> ["jimmy", "John", "Mike", "alex", "从alex后面插入试试新姿势", "Rain", "Tom"]

del names[4]

>>> ["jimmy", "John", "Mike", "alex", "Rain", "Tom"]

names.remove("Mike") #删除指定元素

>>> ["jimmy", "John", "alex", "Rain", "Tom"]

names.pop() #删除列表最后一个值 

>>> "jimmy", "John", "alex", "Rain"]

扩展

names = ["jimmy", "John", "Mike", "alex"]

>>> b = [1,2,3]

>>> names.extend(b)

>>> ["jimmy", "John", "Mike", "alex", 1, 2, 3]

拷贝

names = ["jimmy", "John", "Mike", "alex", 1, 2, 3]

names_copy = names.copy()

names_copy

>>> ["jimmy", "John", "Mike", "alex", 1, 2, 3]

统计

names = ["jimmy", "John", "jimmy", "alex"]

names.count("jimmy")

>>> 2

排序 & 翻转

names = ["jimmy", "John", "Mike", "alex", "1", "2", "3"]

names.short() # 这里要注意 3.0版本 排序要求 列表里面的类型要一样

>>> ["1", "2", "3", "jimmy", "John", "Mike", "alex"]

names.reverse() #反转

>>> ["jimmy", "John", "Mike", "alex", "1", "2", "3"]

获取下标

names = ["jimmy", "John", "Mike", "alex"]

names.index("John")

>>> 2

print(names[names.index("John")])  # 查找并且取出

>>> "John"

你可能感兴趣的:(列表的基本操作 - python3)