【Python小短课 5】管好你的数据
本质上,所有对数据的管理都可以抽象为“增删改查”四个行为。而管好数据的前提,你得先定位到你的数据,也即你想要“增删改”那么得先“查”。
上回说到给数据取名字,为什么要取名字?原因就在于要定位数据,进而管理数据、处理数据。上回的变量讲了简单数据结构,也即数字和字符串,这两种Python世界的基本元素,之后无论多高级的数据结构,本质上依然由这二者构成,你也可以根据各种Python规则定制自己的数据结构。
而官方提供两类高级数据结构,一类是聚合结构,一类是复合结构。不需纠结聚合和复合有什么区别,名字而已,本质上都是把一堆数据按一定规则封装在一起,统一管理。
聚合结构,有三种,列表、元组、字典。
复合结构,也即对象(有没听过一个梗,面向对象编程的码农经常是找不到对象的)。
注意,以下部分代码只是为了展示,理解即可,不需太纠结还没掌握的语法细节,之后会引导大家理解。
先来说聚合结构。
列表和元组一样都是有序集合,唯一区别在于,列表可以进行“增删改”,而元组不可以:
代码:
#!/usr/bin/python
# -*- coding: UTF-8 -*-
#列表
a = ["A","B","C"]
#元组
b = ("1","2","3")
print("a第一位是"+a[0])
print("b第三位是"+b[2])
#列表a支持增删改,元组b不支持增删改,以下暂时不要掌握
a.append("D")
del a[0]
a[0] = "E"
字典是一种无序集合,也即对于你来说,无法使用顺序递增的索引号来进行定位,而必须在刚开始就给你的数据设置一个键值,之后通过这个键值进行定位:
代码:
#!/usr/bin/python
# -*- coding: UTF-8 -*-
#字典
a = {"a":"1","b":"2"}
print("字典a对应于键值a的值为"+a["a"])
#增删改
a["ee"] = 4
del a["b"]
a["a"] = 10
可以看到,无论是哪种结构,是有序还是无序,本质上都是把一堆数据封装在一起,统一管理,而定位的规则有所不同而已。
那么,作为复合结构的对象呢?如上所说,还是给大家留点时间找对象,之后会跟大家讲清楚(事实上,在现阶段,去理解对象对于各位小萌新而言,必要性不大)。
大家只需记住,在Python世界里,要管好数据,有序集合(列表、元组)和无序集合(字典)是我们两种常规的高级数据结构,具体管理方式则是“增删改查”,而至于具体的语法细节反而是不重要的,会在日后慢慢学习掌握。