1、相似的功能,不同的方法名
列表和集合都是python最常用的容器类型数据,都可以新增数据,但是列表新增时,可以使用append方法和insert方法,而集合新增数据时,则需要使用add方法,看似同样的功能,为什么方法的名字会不一样呢?
先来简单了解一下列表的新增
lst = [1, 3, 4]
lst.insert(2, 5) # 在索引为2的位置插入新数据5
print(lst)
lst.append(6) # 在列表末尾新增数据6
print(lst)
在来看一下集合新增数据的示例代码
s = {2, 3, 4}
s.add(5)
s.add(6)
print(s)
2、 列表是有序数列
list 是一种有序的数据结构,对列表里数据的任何操作,都离不开索引,想象一下,你去食堂吃饭,已经排了长长的队伍,这就是一个有序的结构,最靠近窗口的排在第一位,后面的是第二位,依次类推。
如果队伍太长,你很没道德的插队,这就是列表里的insert方法,如果你很守规矩,虽然人很多,你也还是乖乖的走到队伍的末尾排队,这就是append,在末尾追加。
下面这张图很好的诠释了这两种方法的区别insert 和 append方法的区别
3、 集合不是有序结构
集合没有有序的概念,因此,也就没有索引这个概念,使用add方法新增数据时,我们也不关心数据在什么位置上,集合最重要的规则是确保没有重复数据,下图是集合add方法新增数据的示意图
4、总结
insert 的意思是插入,append是追加,只有那些有序的事务才能用这样的词汇来加以描述,而add不同,有序无序都可以用add来描述新增这个动作,好的函数名称,方法名称,应该可以准确的概括函数所实现的功能。
虽然是一个不起眼的小事情,但其背后,却隐藏着两种数据结构
什么算是入门呢,你基本会使用这些数据类型,知道what is it ,也知道how to do
什么算是精通呢,你得知道why
扫一扫,获得更多有深度的python干货