回顾:

什么是变量?,有什么用?

可以变化的量, 就是个容器,多次变化,方便后续使用,

前面介绍了哪些数据类型?

bool, str, int, float

用什么函数查看数据的类型?

a = "hello"
print(type(a))

到了这一步,,我们认识了哪些数据类型呢?

int 整型(整数), float  浮点型(小数), bool布尔型(True  False),str 字符串

 上面的四种数据类型,有一个是卧底,你能发现吗?

提示, 东北虎,猎豹, 獾, 西伯利亚狼  哪一个区别其他动物

是的,没错,

就是他,西伯利亚狼

区别是什么呢?

他群居,有秩序

那么在回来看着几个数据类型

int, float, bool, str 这几个数据类型,那个像狼呢?

是的就是他 str

str_0 = "hello world"

 我们可以发现字符串里面可以有多个字符, 同时每个字符呢,都有一个下标,什么是下标呢,就是每个字符的 编号,就跟我们上学时,是不是每个学生都有一个学号,通过学号,我就能找到你这个人

如下所示:

python基础9_序列类型-LMLPHP

那么我们知道字符串这个数据类型,可以存储多个元素, 还有下标,那么我们叫这种数据类型叫什么呢?

是的,就叫做有序序列类型   序列代表他可以存多个值里面的每一个字符都可以看做一个值,有序是他有顺序,也就是有下标

那么我们怎么通过下标获取字符串里面的值呢?

str_0 = "hello world"
print(str_0[0]) # 获取下标为0 的值 格式就是变量[下标]
print(str_0[1])
print(str_0[2])
print(str_0[3])
print(str_0[4])

结果如下:

python基础9_序列类型-LMLPHP

上面讲了正向下标,除此之外还有反向下标,就是从右到左递增,效果如下:

同理可利用反向下标获取该下标的值

str_0 = "hello world"
print(str_0[-11]) # 获取下标为-11 的值 格式就是变量[下标]
print(str_0[-10])
print(str_0[-9])
print(str_0[-8])
print(str_0[-7])

结果如下:

 python基础9_序列类型-LMLPHP

上面这个通过下标获取序列里面的值,这个就叫做索引

值得注意的是有一种情况叫做下标越界,什么叫做下标越界呢,简单来说就是我序列里面的下标只有10个下标,但是你获取值是通过下标12, 15等等这些没有的下标去获取,

那序列只能说:臣妾做不到啊

如下:

str_0 = "hello world"
print(str_0[-12])

报错如下:

python基础9_序列类型-LMLPHP

 前面我们讲了有序序列数据类型的索引,我们再来讲讲他的另一个概念-切片

什么是切片呢?你可以这样理解, 你手里有一把手术刀,你用你魔法般的手法,把有序序列这个数据,想怎么切成几段,就切成几段,然后从中获取自己想要的值

如下图所示

str_0 = "hello world"
a=str_0[2:6]#左闭右开,获取下标2-5的值
print(a, len(a))
b=str_0[3:11]#获取下标3-10的值
print(b)
c=str_0[-8:11]#获取下标3-10的值
print(c)
d=str_0[-8:]#获取下标3-10的值
print(d)
e=str_0[:7]#获取下标6前所有的值
print(e)
f=str_0[:]#获取所有的值
print(f)
g=str_0[::2]#获取步长为2的值
print(g)
h=str_0[::3]#获取步长为3的值
print(h)
i=str_0[::-1]#反向获取所有的值
print(i)

结果

python基础9_序列类型-LMLPHP

序列有三个概念

索引, 切片, 步长

前面介绍的都是字符串这个有序的序列类型   

有序的序列类型还有两个

列表和元组

列表这个有序的序列类型用法如下

list_0=['hello','world',23,2.5,["李白",1]]
print(list_0[1])#打印下标1的值
print(list_0[::-1])#反向打印所有的值
print(list_0[-1][1])#嵌套打印列表里面1这个值

 元组也是属于有序的序列类型

具体用法如下

tuple_1=(1,2,3,4,5,6,7,8,9)#元组是用小括号包裹的多个值
#针对一个数据的情况下, 如果不加逗号就是字符串,如果后面加了一个逗号就是元组
tuple_2=("李白",)
print(type(tuple_2))

结果:

python基础9_序列类型-LMLPHP

 上面就是一些序列类型的使用,其他比如列表和元组,他们使用索引,还有切片和步长都是和前面讲的字符串一样的

03-09 09:50