个人简历:千粉博主,问答达人,帮助Java、编程语言(c语言)、python的 初学者,同时,用平台写博文记录学习成长的过程!
链接: @语言-逆行者
列表的基本用法
前言
本文的主要内容是介绍Pytjon中的列表及其用法与使用,利用代码示例与运行结果来清楚说明列表的基本用法以及相关的基本操作。
1、列表的说明
- 【1】列表的特点
- 列表中的元素是有序的,按顺序排序
- 一个索引只能对应一个数据
- 允许存储重复的数据
- 允许存储各种类型的数据
- 可以根据需要动态分配和回收内存
- 【2】列表的格式
- 需要中括号[],元素之间使用英文的逗号隔开
2、列表的创建
【1】中括号方式
lis = ['hello', 'world', 'hello', 98]
print(lis[2])
【2.1】截取方式list[start:stop:step]
strat参数:表示开始截取的下标,包括
stop参数:表示结束截取的下标,不包括
step参数:表示步长,也就是截取一个元素之后隔开多少个位置再取另外一个元素
lis2 = [33, 55, 77, 88, 22, 55]
print(id(lis2))
print(lis2[1:4:1]) # 获取列表中的多个元素语法规则:列表名[start:stop:step],分割后的列表地址会改变
print(lis2, id(lis2))
lis3 = lis2[1:4:1]
print(lis3, id(lis3))
注意:分割后的列表地址会改变
【2.2】截取方式list[start:stop:step],谈谈步长为负数的情况,例如:步长为-1:start默认是最后一个元素位置,stop默认为第一个元素,依次向左递减截取元素。
lis2 = [33, 55, 77, 88, 22, 55]
print(lis2[::-1]) # 步长为-1:start默认是最后一个元素位置,stop默认为第一个元素
解释
3、列表元素的判断与遍历
in关键词,目标值存在列表就输出True,否则输出False
lis4 = ['hello', 'world', 'hello', 98]
print(98 in lis4)
【for 变量 in 可迭代变量】方式遍历列表
lis4 = ['hello', 'world', 'hello', 98]
for item in lis4:
print(item)
4、列表元素的增加
append():后续位置插入元素
insert():指定位置插入元素
lis5 = ['hello', 'world', 'hello', 98]
lis4.append(100)
print(lis5)
lis5.insert(0, 333)
print(lis5)
5、列表元素的删除
【1】list[start:stop]=[]
表示指定位置段删除,结果用空列表来接受,删除过程不产生心得列表对象。
lis6 = [12, 33, 55, 66, 77, 33]
print(lis6,id(lis6))
'''不产生新的列表对象,而是删除原列表中的内容'''
lis6[1:4] = [] # 用空列表来接受
print(lis6,id(lis6))
【2】del 列表名
直接删除对象
6、列表元素的修改
print("-----------------------修改操作----------------------")
lis7 = [12, 33, 44, 55, 66, 77]
lis7[0] = 22 # 修改列表下标为0 的值,改为22
print(lis7)
lis7[1:3] = [333, 444, 555, 666] # 修改列表下标值1~2的对应的值,修改为[333, 444, 555, 666],两个位置上元素修改成了四个
print(lis7)
7、列表元素的排序
sort()默认为升序
sort(reverse=True):表示降序
# 排序,默认升序
print("-----------------------排序操作----------------------")
lis8 = [43543, 65, 23, 111, 453, 5]
lis8.sort()
print("升序:", lis8)
lis8.sort(reverse=True) #降序
print("降序:", lis8)
使用内置函数sorted()对列表进行排序,将产生一个新的列表
print("--------------使用内置函数sorted()对列表进行排序,将产生一个新的列表----------------------")
lis9 = [43543, 65,545,76,88,2, 23, 111, 453, 5]
print("原来的数据:",lis9, id(lis9))
new_lis9 = sorted(lis9)
print("升序:", new_lis9,id(new_lis9))
new_lis9 = sorted(lis9,reverse=True) #降序
print("降序:", new_lis9,id(new_lis9))
8、列表生成式
print("----------------------生成列表---------------------------------")
lis10 = [i*i for i in range(1, 10)]
print(lis10)
9、上一篇的Python【集合】操作的传送门:
链接: Python【集合】