Extend函数和append函数的区别

文章详细解释了在《机器学习实战》中遇到的extend和append函数的区别。extend用于将一个容器的元素逐个添加到另一个容器,而append则是将整个容器作为一个元素添加。文中以决策树和特征处理为例,展示了如何使用这两个方法来构建和调整数据集,确保最终返回的数据集保持原结构。
摘要由CSDN通过智能技术生成

今天在看《机器学习实战》一书中有关决策树的案例讲解时发现了extend和append函数都是表示添加,但用法不同的这个情况,如图:

 其实,具体讲来是,extend是将容器打碎后添加(添加的是容器内的元素),而append添加是将容器看作整体来进行添加(将整个容器作为一个整体的元素添加到新的容器中)

课本中也有更容易理解的例子:

 于是,我们可以真正理解通过

reducedFeatVec = featVec[:axis]          #去掉axis特征
reducedFeatVec.extend(featVec[axis+1:])

上述两步只是为了去掉axis特征。

而通过append操作

retDataSet.append(reducedFeatVec)

我们又可以将reDataSet = [ ]这个空集合重新整合成数组的形式,这样我们的函数最后返回的就还是一个数据集的形式啦

在 Python 中,列表是一种非常常用的数据类型,它可以存储多个元素。列表提供了很多方法来对其进行操作,其中包括 append() 和 extend()。 append() 方法用于向列表末尾添加一个元素,它的语法如下: ```python list.append(elem) ``` 其中,list 是要添加元素的列表,elem 是要添加的元素。如果要将多个元素添加到列表末尾,可以多次调用 append() 方法。 extend() 方法用于将一个列表中的所有元素添加到另一个列表中,它的语法如下: ```python list.extend(iterable) ``` 其中,list 是要添加元素的列表,iterable 是要添加的元素的可迭代对象。extend() 方法会将可迭代对象中的元素依次添加到列表末尾。 需要注意的是,如果要向列表中添加一个元素,应该使用 append() 方法。如果要向列表中添加多个元素,可以使用 extend() 方法或者把多个元素放入一个列表中再使用 append() 方法。 举个例子,假如我们有两个列表 a 和 b,分别为 [1, 2, 3] 和 [4, 5, 6],我们可以使用 append() 方法向列表 a 中添加一个元素,如下所示: ```python a = [1, 2, 3] a.append(4) print(a) # 输出结果为 [1, 2, 3, 4] ``` 我们也可以使用 extend() 方法将列表 b 中的元素添加到列表 a 中,如下所示: ```python a = [1, 2, 3] b = [4, 5, 6] a.extend(b) print(a) # 输出结果为 [1, 2, 3, 4, 5, 6] ``` 需要注意的是,如果我们使用 append() 方法将列表 b 添加到列表 a 中,那么列表 b 将成为列表 a 的一个元素,如下所示: ```python a = [1, 2, 3] b = [4, 5, 6] a.append(b) print(a) # 输出结果为 [1, 2, 3, [4, 5, 6]] ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值