前言:本节内容主要针对python中对序列的一些操作
目录
一、序列的定义及序列数据类型:
- 定义:可以存放多个值的一个内存空间,相当于一个容器。
- 数据类型:列表,元组,集合,字典,字符串。
二、可变类型及不可变类型:
- 可变类型可以对它进行修改,不可变类型不可以对它进行修改
- 可变类型:列表,字典,集合
- 不可变类型:元组,字符串,数值
三、列表 元组 字符串:
- 列表定义:就是用一对中括号[]括起来,每个元素都使用逗号隔开,没有个数限制。[value1,value2,.....]
- 内置函数:len(序列名)返回序列的元素个数。
list1 = [12,23.4,True,12,56] #有五个元素
list2 = [34,23,[3,56,78],11,"小明"]
print(len(list1))
print(type(list1)) #打印数据类型
print(list1)
print(len(list2)) #打印列表长度
print(list2)
运行结果
5
<class 'list'>
[12, 23.4, True, 12, 56]
5
[34, 23, [3, 56, 78], 11, '小明']
3.元组(不可变类型):就是用一对小括号()括起来,每个元素都使用逗号隔开,没有个数限制。(value1,value2,.....)
如果元组内只有一个元素,后面还需要一个逗号
t4 = (4)
t2 = (4,)
print(type(t4))
print(type(t2))
运行结果
<class 'tuple'>
<class 'int'>
t1 = (12,23,34.9,True,"小明")
print(t1)
print(len(t1))
print(type(t1)
运行结果
(12, 23, 34.9, True, '小明')
5
<class 'tuple'>
4.字符串:使用一对双引号或单引号引起来的,每个元素都是单独的字符,没有个数限制。
s1 = '123 45 abc小明'
print(s1)
print(len(s1))
运行结果
123 45 abc小明
12
5.综合:
a = [23,True,'abcde',(12,34),[22.3,44,66]]
b = (23,True,'abcde',(12,34),[22.3,44,66])
print(a)
print(len(a))
print(b)
print(len(b))
运行结果
[23, True, 'abcde', (12, 34), [22.3, 44, 66]]
5
(23, True, 'abcde', (12, 34), [22.3, 44, 66])
5
四、索引:
顺序索引:从左到右 从0开始
list3 = [12,34,5,True,56,"小明"] #下标从0开始
print(list3[0])
print(list3[5])
运行结果:
12
小明
t3 = (23,34,(12,3,4),"2小",[23,34])
print(t3[1])
运行结果:
34
s1 = '123uygvh098'
print(s1[1])
print(s1[0])
运行结果:
2
1
倒叙索引:从右往左 从-1开始
list3 = [12,34,5,True,56,"小明"]
print(list3[-3])
print(list3[-1]) #下标从-1开始
运行结果:
True
小明
t3 = (23,34,(12,3,4),"2小",[23,34])
print(t3[-1])
运行结果:
[23,34]
s1 = '123uygvh098'
print(s1[-1])
运行结果:
8
五、切片:
start:索引开始的位置,包含本身
end:索引结束的位置,不包含本身
step:步长值,索引间隔,默认值为1,默认为1时可以省略
当step>0的时候,为顺序切片,start<end,否则为空
当step<0的时候,为倒叙切片,start>end,否则为空
list3 = [12,34,5,True,56,"小明"]
print(list3[0:4])
print(list3[0:4:2]) #2是间隔
运行结果:
[12, 34, 5, True]
[12, 5]
t3 = (23,34,(12,3,4),"2小",[23,34])
print(t3[0:4:1]) #默认为1可以省略
print(t3[0:4:2]) #从0到4-1的元素
print(t3[-1:-4:-1])
运行结果:
(23, 34, (12, 3, 4), '2小')
(23, (12, 3, 4))
([23, 34], '2小', (12, 3, 4))
s1 = '123uygvh098'
print(s1[-1:-4:-1])
print(s1[0:4:2])
运行结果:
890
13