追加写入数据,这种应用场景在爬取外部数据时,经常可以遇到。response回来的是一条条json格式的数据,在解析时有时候需要在循环中把这一条条数据追加到文件中。比如前两天分享的一个简单的爬虫实例中,使用了这样一条代码:
mydata.extend(req.json()['data'])
下面将通过实例展开说明,为什么使用extend。
将非list类型的object追加到list
list是一个几乎万能的容器,可以把任意类型的数据装进去。以下使用的是Ipython进行的小测。ipython很好用,比如你在使用list的append方法时,不是很清楚它的参数情况。只需要在输入append 后再输入半个括弧,ipython会提示你这个函数实现的功能是什么,以及应该使用的参数。
-
append:append object to end
系统提示的是append实现的功能是,将一个对象追加到原始数据的后面。既然是一个对象,你知道在python中所有数据类型都是一个对象。这就意味着使用append不仅可以将单一的数据类型,比如字符串、整型、浮点型追加进去,还可以将一个数组,元组或是一个列表追加到原始list对象中。
-
extend:extend list by appending elements from the iterable
extend系功能提示表示,将一个可递归的数据类型中的元素,追加到原始列表中。一定要是可以递归的数据类型中的元素。
所以,如果你是要把非list类型的数据追加到list中,就选用append( )方法。
将list类型的object追加到list
假设我们有如下数据源,需要把d0,d1追加到data中。
append:append object to end
extend:extend list by appending elements from the iterable
如果是要把list类型的数据追加到list中,就选用extend( )方法,就不会出现多个list嵌套的结果。
欢迎点击下方二维码,关注《数据分析师手记》,跟三月桑一起学习数据分析