首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在python中,bunch和字典类型有什么区别?

在python中,bunch和字典类型有什么区别?
EN

Stack Overflow用户
提问于 2019-05-24 05:13:22
回答 2查看 11K关注 0票数 11

我发现sklearn.utils.Bunchdict的工作原理大致相同。就像如果有一个dict对象,比如

代码语言:javascript
复制
dict_1 = {"a":1, "b":2}

一堆物体就是一束

代码语言:javascript
复制
bunch_1 = Bunch(a=1, b=2)

两人都有相同的行为。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-05-24 05:14:34

Bunch是Dict类的子类,与dict一样支持所有方法。此外,它还允许您使用键作为属性。

代码语言:javascript
复制
b = Bunch(a=1, b=2)
>>> b['b']
2
>>> b.b
2

在这里读更多

票数 13
EN

Stack Overflow用户

发布于 2019-11-10 12:34:34

Bunch就像字典一样,但它支持属性类型访问。

  1. 数据类型
  • 字典是内建的类型,而束是来自包类包.班奇班。
  • 邦奇在python 2中工作得很好,但在python 3中却不起作用!您从sklearn.utils导入了一堆 from bunchclass import Bunch # python 2 from sklearn.utils import Bunch # python 3
  1. 邦奇的Initialization初始化不需要{},而是一个显式函数,它具有您需要的元素的属性。 d1 = {'a':1,'b':'one','c':1,2,3,4:'d'}` b1 =b(a=1,b='one',c=1,2,3) #也注意:这里的键是类的#属性。它们必须是可变的,并且必须遵循变量的#约定。
  2. 访问密钥的值,这是两者的主要区别。 d1'a‘b1'a’b1.a

Bunch中,您可以使用点符号访问属性。在dict中,这是不可能的。

Similarities既可以包含字典,也可以包含任意数据类型的值。但钥匙必须是可变的。可以有嵌套字典和嵌套包。

束束的实用程序

  • Bunch()对于json来说是有用的序列化。
  • 束()用于在sklearn中加载数据。在这里,通常一堆包含各种类型的属性(list、numpy数组等)。

有关的更多信息,与任何其他对象一样,使用dir(Bunch object)来了解更多信息。请参阅此链接以了解更多有关bunch:束束的信息。

如果您的目标是将一堆数据转换为数据格式,您可以引用此链接python/blob/master/sklearn.utils.bunch%20to%20pandas%20Dataframe.ipynb

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56286221

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档