针对多条数据,为避免机械重复性的无意义工作,直接用列表或字典会更加方便快捷。
Ⅰ. 列表
列表就类似于C语言中的数组,但其更具有包容性,可以同时存放各种类型的数据(整数/浮点数/字符串)。
①.列表的基本格式:
②.从列表中提取单个元素。
和C语言的数组一样,利用索引(或者偏移量,从0开始)针对性的取出特定元素。
③. 从列表中提取多个(连续的一段)元素。
可以直接利用切片的方法截取列表的某一段,其中 [x : y] 是一个前闭后开的片段,即截取的时候从 x 索引开始到 y-1 索引结束(包含)。
注: 切片的方法取出来的是一个列表类型的片段,而不是特定的元素。
④. 给列表增加 / 删除元素。
直接利用 append() 函数向列表末尾压入一个元素,该元素可以为任何类型数据(当然包括列表本身)。
利用 del 列表名[列表索引] 语句直接锁定删除特定的元素。
Ⅱ. 字典
针对像具有 [身高,班级,成绩…] 这种具有多种属性的数据组,用字典能更好的将元素及其各种属性一一对应(类似于C语言的结构体)。
①. 字典的基本格式:
其中元素都有键(冒号前面)和值(冒号后面)两部分组成,形成的新组合叫做键值对。
需要注意的是键具有唯一性,而值可以重复,如果出现相同的键,则后来者将覆盖原先的键值对。
②. 从字典中提取元素。
和列表不一样的是,字典通过键来提取元素(值)。
③. 给字典增加 / 删除元素。
和列表一样的是,字典也是通过 del 字典名[键] 来删除元素;但增加元素就简单多了,直接利用 字典名[键] = 值 就可以向字典末尾增加一个新的键值对啦。
Ⅲ. 列表与字典的异同
一. 共同点:
①. 都可以存储多个元素,都是利用相应的索引寻找元素。
②.都是通过赋值修改元素。
③. 都可以进行嵌套使用。
这就类似于C语言中的二维数组。
同样列表和字典之间也可以互相嵌套使用:
二. 不同点:
列表中的元素是有自己明确的“位置”的,即使看似相同的元素,只要在列表所处的位置不同,它们就是不同的元素。
而字典相就更加随和得多,即便调动顺序也不影响。因为列表中的数据是有序排列的,而字典中的数据是随机排列的。
这也是为什么两中数据类型提取元素的时候方法不一样了:列表有序,要用偏移量定位;字典无序,便通过唯一的键来取值。