本帖最后由 啦啦啦啦77 于 2018-10-7 22:31 编辑
不知不觉学习Python已经半个多月了,通过这半个多月的学习,从“hello world”都不懂的小白,渐渐的,自己可以码一些简单的代码,在讲师的带领下,从陌生到渐渐的融会贯通,可以真真实实的看到自己的进步。由于正在学习字典和列表,也为了巩固下基础,我就分享下两者的对比和总结! 列表是一个序列,可以理解为数据结构中的数组,字典可以理解为数据结构中的hashmap,他俩都可以作为集合来存储数据。 从差异特征上来说 1. list是有序的,dict是无序的 2. list通过索引访问,dict使用key访问 3. dict的占用内存稍比list大,会在1.5倍左右 List的应用场景: List是记录简单有序数据的,就是一对一的那种,可以理解为一维数组. 比如你记录猫的名字,就可以用list = ['第1只猫名字','第2只猫名字'] ... 比如你记录饭店的菜品,就可以用list = ['第1个菜红烧肉','第2个菜红烧大肠',第3个菜'红烧排骨'] ... 这里的记录,是多条记录重复的,需要按一定顺序来记录. list 也可以有嵌套,嵌套里面的list仍然可以理解为一维数组 比如常见的季度与月份的关系 list = [[1,2,3],[4,5,6],[7,8,9],[10,11,12]] 这里的记录,是多条按一定顺序存放的,仍然需要按一定顺序来读取存放. 上面是我理解的list,有序的应用场景.
字典的应用场景: dict 是记录复杂无序数据,就是一对多,可以理解为多维数组. 比如你记录一次野餐朋友带的食物数量, dict = {'小明':{'红烧肉':6,'大闸蟹':8,'水煮鱼':1},'小花':{'黄瓜':9,'番茄':2},'小六子':{'啤酒':30,'可乐':40}} dict可以嵌套list,把无序的数据调整为有序的数据,可以简单地理解为,一对多个一维数组,本质上还是多维数组. 比如你要记录同学们有多少个女朋友,dict = {'小明':['1号女友','2号女友'],'大个子':['1号女友','2号女友','3号女友']},你要统计谁的女朋友多,这个就比较明显地体现出来了. 比如你要记录一次会议参加的人员的基本信息,大家的信息都不一样时,也是无序随机事件: dict = {'男性':{'张博':{'年龄':30,'职业':'老师','级别':'高级教师'},'王强':{'手机':'1309999999'}},'女性':{'小花':{'爱好':'化妆','职业':'美容师'}}}
|