python课本学习-第五章
一、列表的概念
1、列表的创建
- 列表是由一组任意类型的值组合而成的序列,组成列表的值称为元素,每个元素之间用逗号隔开。
- 列表中的元素是可变的
#列表类似于c++中的数组,数组下标从0开始
list1 = [a, b, c]
list2 = [a,]
#通过list()函数创建列表
list1 = list("opq")
output:['o','p','q']
- range()函数
- range(start,end):返回一系列整数,从start开始,到end-1结束,相邻整数相差1
- range(end):(0,end-1)
- range(start,end, step):返回一系列整数,相邻两个整数相差step,结束整数不超过end-1
2、列表的索引和切片
- 列表的索引
- 列表的切片
列表的切片类似于字符串的切片,列表的切片可以从列表中取得多个元素并组成一个新列表
list1 = list(["opq"])
print(list1(1,1,1))
#原列表中不会发生任何变化
3、列表的遍历
- while+len()函数
- for
list = ['o','p','q']
for value in list:
print(list)
二、列表的运算
- 相关运算符
list1 = ['o','p','q']
n1, n2 = list1[0:]
n3, n4 = list1
print(n1, n2, n3, n4)
output:/o p q/
三、列表的常用操作
1、修改元素
#修改就像c++数组一样,直接赋值就可以
list1 = ['o','p','q']
list2 = [1, 2, 3]
list1[1:] = list2[0:2]
print(list1)
output:/'o', 1, 2/
2、添加元素
#append(obj):在列表末尾添加元素obj
#extend(seq):在列表末尾一次性添加另一个序列seq中的多个元素
#insert(index,obj):将元素obj插入列表的index处
eg:list1.append('i')
3、删除元素
#pop(index=-1):删除列表中index处的元素(默认index=-1),并返回该元素的值
#remove(obj):删除列表第一次出现的obj元素
#clear():删除列表中的所有元素
4、查找元素位置
- index():返回从列表中查找出某个元素第一次出现的位置
eg:index(查找元素,start = 0, end = -1)
5、元素排序
- reverse()函数:反转列表中的元素
list1.reverse()
- sort函数
list1.sort()
list1.sort(reverse() = True)
6、统计元素个数
list1.count('q')
四、列表推导
#列表推导语法格式:[表达式1 for 变量k in 列表L if 表达式2]
#或者:
#list1 = []
#for k in 列表L:
# if 表达式2:
# list.append(表达式1)
list = range(1, 11)
newlist = [num**2 for num in list (if num > 5)]
print(newlist)#list中的元素的平方
五、元组
1、元组的创建
- 元组类似于列表,也是一种序列,元组中的元素不能被改变,列表使用小括号
- 创建元组
# 元组创建只需要将元素用逗号隔开
t1 = 5, 1, 2
# 元组创建也可以使用小括号
t1 = (5, 1, 2)
# 创建空元组
t1 = ()
# 元组中只有一个元素,一定要在元素后加一个逗号
t1 = (1,)
2、元组的索引
- 两种索引方式
- 下标索引:不能修改元组的值
- 切片索引
- 引入元组的必要性
- 元组速度比列表快
- 元组对需要修改的数据进行写保护,数据安全性高
- 一些元组可以用作字典键
3、元组的遍历
- for
4、元组的计算:与列表类似
5、元组与列表的转换:
-list():将元组转换为列表
-tuple():将列表转换为元组