Python 学习笔记
一、序列
1.1、什么是序列 ?
序列是 Python 中最基本的一种数据结构。数据结构是指计算机中数据存储的方式。
向序列添加数据,序列会安装添加顺序给予编号(0,1,2 …),而这些编号称之为 ‘索引’,且从 0 开始记录。
所以,序列也可以理解为一个按照索引排序的有序队列。
1.2、序列的分类
- 可变序列
即,序列当中的元素可以改变。如:列表(list) - 不可变序列
即,序列当中的元素不可以改变。如:字符串(str)、元组(tuple)
二、列表的创建
对象(object) 就是内存中用来存储数据的一块区域。
列表 也是 Python 中的一个对象,可以保存多个有序的数据。
列表当中存储的数据,我们称之为 元素 。
列表的创建
可以通过:列表名 = []
来创建一个空的列表。如:list = []
列表可以存放多个 任意类型 数据,每个元素用 , 隔开。如:list = [1,'python',None,True,[1,2,3]]
可以通过 索引 取出列表的元素:
# 索引是从0开始. 列表第一个位置就是 0, 第二个是 1, 以此类推
# 索引值可以为负数, 此时索引从 -1 开始, 从后往前获取元素
list = [1,'python',None,True,[1,2,3]]
print(list[1]) # python
print(list[-1]) # [1,2,3]
# 获取列表的长度(列表中元素的个数) len()
# 获取长度 其实就是, 列表的最大索引值 + 1
print( len(list) )
三、列表切片
切片: 指从现有类别,获取一个子列表(某几个连续的元素)。
语法: 列表 [ 起始位置索引 : 结束位置索引 ]
# 通过切片获取元素,会包括起始位置的元素,不会包括结束位置的元素
# 做切片时,总会返回一个新的列表,不会影响原来的列表
hero = ['钢铁侠','绿巨人','蜘蛛侠','黑寡妇','蚁人','美国队长']
print( hero[0:2] )
# 起始位置和结束的位置的索引是可以不写的
# 1、如果省略结束位置,则会一直截取到最后
print( hero[1:] )
# 2、如果省略开始位置,则会从第一个元素开始截取到结束位置(不包括)
print( hero[:3] )
# 3、如果开始位置和结束位置都不写,则会从第一个元素截取到最后
print( hero[:] )
语法增加 '步长’
步长: 表示获取元素的间隔,默认值是 1(可省略)。也可以看作是从当前元素向后“走几步”,
如:步长为 1,就是向后走 1 步,到达下一个索引;
步长为 2,就是向后走 2 步,间隔一个索引到达下下个索引。
语法:列表 [ 起始 : 结束 : 步长 ]
hero = ['钢铁侠','绿巨人','蜘蛛侠','黑寡妇','蚁人','美国队长']
print( hero[::2] )
# 步长可以是负数,但是不能为 0
# 如果是负数, 则会从列表的后部向前取元素
print( hero[::-1] )
hero = ['钢铁侠','绿巨人','蜘蛛侠','黑寡妇','蚁人','美国队长']
print(hero[:1:-