Python基础 列表
为什么需要列表?
难道一个变量不可以表示吗?答案是,可以,但很麻烦
那么列表有什么好处呢
列表的用处
- 变量可以储存一个元素,但是列表是一个“大容器”,可以存储N个元素,可以方便对这些数据进行整体操作
- 列表相当于其他语言中的数组
列表的创建
#First 使用[]进行创建
List = ["I","Love","Python"]
#Second 使用list()方法进行创建
List = list(["I","Love","Python"])
列表的特点
- 列表元素按照创建顺序有序排列
- 列表的索引映射唯一 一个数据
List = ["I","Love","Python"]
print(List[1])
#则输出结果为 Love
- 列表在内存中的存储
- 列表可以重复存储数据
- 任意数据类型混存
- 根据需要动态分配和回收内存
列表的操作
列表元素的查询操作- 获取列表中的元素的索引
List = ["I","Love","Python"]
print(List.index("Love"))
#输出结果为1
1、如果列表中存在多个相同的元素,则只返回第一个元素的索引值
2、如果查询的元素不存在,则返回ValueError
3、还可以在指定的范围内进行查找
List = ["I","Love","Python"]
print(List.index("Love",0,1))
#输出结果为1,在0到1之间查找
- 获取单个元素
1、正向索引
List = ["I","Love","Python"]
print(List[2])
#输出结果为Python
2、逆向索引
List = ["I","Love","Python"]
print(List[-1])
#输出结果为Python
3、如果元素不存在,则抛出IndexError错误
- 获取多个元素
1、通过切片来获取 列表名[start,stop,step]
List = ["I","Love","Python"]
print(List[0:2:1])
#输出结果为['I','Love']
#由于步长可以省略,所以step可以不写
print(List[0:2])
#输出结果依然为['I','Love']
print(List[0:3:2])
#设置步长为2.输出结果为['I','Python']
print(List[2:0:-1])
#若设置步长为-1,则start为最后一个元素,stop默认为第一个元素
#输出结果为['Python','Love']
需要注意的是,切片操作,会创造新的列表对象,即对象的id(在内存中的位置)会改变
- 判断列表元素是否存在
列表元素的增加操作
- append()函数
List = ['I','Love','Python']
List.append('Very Much')
print(List)
#输出结果为['I','Love','Python','Very Much']
但是,如果想要加入[‘Very’,‘Much’]两个元素的话,用append()函数,会将两个元素当作一个列表元素插入列表中
List = ['I','Love','Python']
List.append(['Very','Much'])
print(List)
#则会输出['I','Love','Python',['Very','Much']]
- extend()函数
使用entend()函数则不会出现以上情况
List = ['I','Love','Python']
List.extend(['Very','Much'])
print(List)
#则会输出['I','Love','Python','Very','Much']
- insert()函数
会在指定位置插入元素
List = ['I','Love','Python']
List.insert(3,"Very Much")
print(List)
#输出结果为 ['I', 'Love', 'Python', 'Very Much']
- 使用切片进行替换
List = ['I', 'Love', 'Python']
List[2:] = ["C++"]
print(List)
#输出结果为 ['I', 'Love', 'C++']
列表元素的删除
- remove()函数
List = ['I', 'Love', 'Python']
List.remove('I')
print(List)
#输出结果为['Love','Python']
- pop()函数
List = ['I', 'Love', 'Python']
List.pop(0)
print(List)
#输出结果为['Love','Python']
- 切片
List = ['I', 'Love', 'Python']
List[1:] = []
#默认stop为最后一个元素,设置从索引值为1的元素Love到最后用[]代替
print(List)
#输出结果为['I']
- claer()函数
将列表清空
List = ['I', 'Love', 'Python']
List.clear()
#执行clear()方法
print(List)
#输出结果为[],输出结果为空列表
- del()函数
删除列表
List = ['I', 'Love', 'Python']
del List
#执行del 内置函数
print(List)
# 报错:NameError: name 'List' is not defined
列表元素修改
- 为指定索引的元素赋予一个新值
List = ['I', 'Love', 'Python']
List[2] = 'C++'
print(List)
#输出结果为List = ['I', 'Love', 'C++']
- 为指定切片赋予一个新值
List = ['I', 'Love', 'Python']
List[2:] = ['C++']
print(List)
#输出结果为List = ['I', 'Love', 'C++']
列表元素排序
- sort()
调用sort()方法,使得列表中元素按照顺序升序排序;如果想要采取降序排列,则设置reverse = True
List = [1,2,6,7,3,4,5]
List.sort()
print(List)
#输出结果为[1, 2, 3, 4, 5, 6, 7]
List.sort(reverse=True)
print(List)
#输出结果为[7, 6, 5, 4, 3, 2, 1]
- sorted()内置函数
List = [1,2,6,7,3,4,5]
print(sorted(List))
#输出结果为[1, 2, 3, 4, 5, 6, 7]
END
整理不易,希望各位小伙伴们点个赞,收个藏,小C在这里谢谢各位了,么么哒
转载:https://blog.csdn.net/Beibnjin/article/details/113827586
查看评论