A
ACarol
V1
2022/09/08阅读:33主题:默认主题
Python基础1
列表
列表:list 是一个类是一个对象
1. 存储多个数据,理论上没有长度限制
2. 存储多种数据
3. 是一个可迭代对象(拥有迭代器
4. 列表是一个可变类型的数据
创建列表
1. 直接创建
l = [元素1,元素2,...,元素n]
1. 普通列表:[1,2,3,4]整型列表,['a','b','c','d']字符串列表
2. 混合列表:[1,2,'a','b',[1,2,3]]
3. l = []:空列表
2. 通过构造方法来创建
1. list():返回一个空的列表
2. list(iterable):从可迭代对象中的元素,初始化一个列表
访问列表里面的元素
访问:读、改、删
读取元素:
1. 通过索引来获取元素
索引:下标
索引不是下标
python中索引是从0开始技术
访问形式:
变量[下标]---访问一个元素
2. 读取所有的元素
遍历:所有的元素不重复、不遗漏的访问一遍
通过for来进行遍历
3. 如果下标超出了范围则会报错
列表的长度:
列表的下标范围:
0~len(l)-1
列表的索引支持负数
负号:代表的是方向(反向)
-1~-len(l)
向列表中添加元素
1. append(obj):
向列表的末尾添加一个obj
object:对象,在python可以是任何数据
用于添加一个数据
2. extend(iterable):
通过可迭代对象的元素,来扩展当前的列表
iterable:可迭代对象
用于向列表中添加多个数据
3. insert(index,object)
在index之前插入object
index:索引值(下标)
object:任何对象
修改列表中的元素
直接赋值修改
变量[下标] = 新值
删除列表中的元素
1. clear():
清空列表中的所有元素
2. pop([index]):弹栈
删除并且返回下标为index的元素(index默认为最后一个)
如果为空列表则会抛出IndexError
栈:是一种数据结构,FILO:First In Last Out
3. remove(value):
删除第一个出现的value元素(下标最小)
如果value不存在会报ValueError
切片
slice:切片
列表通过索引可以获取一个元素,索引处可以接收更多的参数。
l=[1,2,3,4,5]
l[2:4]
作用:通过起始下标和结束下标获取一段元素(多个元素),该数据是拷贝出来的数据,原数据不变
语法:
变量[start:end]
start:起始下标
end:结束下标
取值:[start:stop)
1. 如果start为0那么可以不写
list[:3]
2. 如果要直接获取到最后一个元素
list[2:]
3. 如果要全取:
list[:]
切片操作往往用于数据的拷贝
-
切片的高级应用
切片还支持第三个参数,表示步长
变量[start:end:step]
start:起始下标
end:结束下标
step:步长
列表的常用运算符
1. 加法运算
list1+list2----列表的拼接
2. 比较运算(布尔运算)
>,>=,<,<=,==,!=
比较原则:对应下标的元素,按照下标从小到大逐个比较,只要比较出大小则停止比较
需要注意类型的兼容性
3. 重复运算
乘法
本质:是多个加法运算
4. 成员关系运算:in/not in
判断列表中是否有某个成员
-
列表中的其他方法
1. copy()
浅拷贝
2. count(value)
返回value值在列表中出现的次数
3. index(value[,start[,stop]])
返回value在列表中从start到stop的范围内的第一次出现的索引
value:要查询的值
4. reverse()
原地翻转
和大小无关,不排序
-
补充
1. 列表中的所有元素,本质上都不是数据本身,而是数据的首地址
2. 列表作为可变类型的数据
可变:当列表中的内容发生改变的时候,列表本身的地址不发生改变,但是列表中的元素发生改变。
↑↑↑ 可变数据类型的定义
二维列表
维度:
[[1,2,3],[4,5,6],[4,5,6],[4,5,6],[4,5,6],[4,5,6],[4,5,6]]
二维列表:一维列表下的一堆列表(一维列表)
二维列表的访问:
1. 直接访问
访问一个元素可以通过下标进行访问
list[行坐标][列坐标]
2. 双重for循环
-
二维列表的创建
l = [[1,2,3]]
l = []
l.append([123])
[list()]
列表的推导式/生成式
l = [i for i in range(10)]
print(l)
元组
圆括号
1. ():可以修改运算的优先级
2. 元组的组成部分
元组
1. 可以存储多个数据
2. 可以存储多种数据
3. 是不可变类型
4. 支持切片操作
5. 可迭代对象
创建一个元组
1. 直接创建
t = (1,2,3)
t = (True,1,2,3)
t = ()
2. 构造方法
1. tuple()---返回一个空元组
2. tuple(iterable)
利用可迭代对象的元素,初始化一个新的元组
访问元组
1. 访问一个元素
和列表一样
2. 访问多个元素
和列表一样
3. 访问所有元素
和列表一样
增加和修改以及删除元素
* 元组是不可变类型,所以,本身不支持增删改操作
1. 向元组中添加元素
利用切片然后元组拼接
2. 从元组中删除元素
利用切片删除元素
3. 修改元组中的元素
先删除,后添加
元组的操作符
1. 拼接操作
+
2. 重复操作
* :本质是多个加法
3. 布尔操作:
>,<,==,!==
比较方法和列表一样
4. 成员关系运算
in/not in
作者介绍
A
ACarol
V1