当您在python中设置字典时会发生什么?

去坎波斯

当我在字典上使用set时遇到此问题时,我正在尝试一些想法来解决一个不相关的问题:

a = {"a": 1}

b = {"b": 2}

c = {"a": 1}

set([a, b, c])
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-21-7c1da7b47bae> in <module>
----> 1 set([a, b, c])

TypeError: unhashable type: 'dict'

d = {"a": 1, "b": 2}

set(d)
Out[23]: {'a', 'b'}

set(a)
Out[24]: {'a'}

我有点理解为什么这组字典是不可散列的(它们是可变的),但是整个事情对我来说意义不大。为什么set(a)set(d)只返回键,以及如何会是这样有用吗?

谢谢!

切普纳

set将任意可迭代对象转换为集合,这意味着为其参数获取一个迭代器。a的迭代器dict返回其键。这与其说是set作为一个有用的dict,但set关心它的参数是什么。

至于dict迭代器为何返回的键的原因dict,这是语言设计人员做出的任意选择,但请记住,鉴于选择了对键,值或键值对进行迭代,因此对键进行了迭代可能是实用性和简单性之间最好的折衷方案。(这三种方法都可以通过明确的d.keys()d.values()d.items();在某种意义上iter(d)是为了共同使用的情况下便利d.keys()。)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从字典中删除值(对象)时会发生什么?

来自分类Dev

当您在Swift中的同步队列中异步调度任务时会发生什么?

来自分类Dev

当您在JavaScript中分配undefined时会发生什么?

来自分类Dev

当函数在python中返回自己的名称时会发生什么?

来自分类Dev

在python中的str上使用encoding时会发生什么?

来自分类Dev

当您在某个进程上按ctrl + z时会发生什么?

来自分类Dev

当您在结束 body 标签之后放置 javascript 时会发生什么?

来自分类Dev

当我在异步回调中设置对象时会发生什么?

来自分类Dev

在方法中枚举静态变量并将其设置为null时会发生什么

来自分类Dev

在方法中枚举静态变量并将其设置为null时会发生什么

来自分类Dev

将硬盘中的所有位都设置为1时会发生什么?

来自分类Dev

在 Swift 中,当两个线程获取并设置非线程安全属性时会发生什么?

来自分类Dev

暂停时会发生什么?

来自分类Dev

将属性应用于python中的类方法时会发生什么情况?

来自分类Dev

Python Redis pubsub:发布类型时会发生什么变化?

来自分类Dev

Python:主进程终止时会发生什么。

来自分类Dev

当您从《虚无》中抽奖时会发生什么?

来自分类Dev

在lldb中打印Swift对象(po)时会发生什么?

来自分类Dev

VHDL中的整数超出范围时会发生什么?

来自分类Dev

当软件包在源中重复时会发生什么?

来自分类Dev

当Final块中的代码引发异常时会发生什么?

来自分类Dev

在C ++标准中,当违反“应”要求时会发生什么?

来自分类Dev

在SVN中删除中继时会发生什么标记

来自分类Dev

在Git中删除分支时会发生什么情况

来自分类Dev

在RTOS中释放或发出信号时会发生什么?

来自分类Dev

在SwiftUI中,显示操作表时会发生什么?

来自分类Dev

为什么在文件中写入csv时会发生错误?

来自分类Dev

当flet在递归函数中时会发生什么?

来自分类Dev

当声明符(我/州)在for块中时会发生什么?

Related 相关文章

  1. 1

    从字典中删除值(对象)时会发生什么?

  2. 2

    当您在Swift中的同步队列中异步调度任务时会发生什么?

  3. 3

    当您在JavaScript中分配undefined时会发生什么?

  4. 4

    当函数在python中返回自己的名称时会发生什么?

  5. 5

    在python中的str上使用encoding时会发生什么?

  6. 6

    当您在某个进程上按ctrl + z时会发生什么?

  7. 7

    当您在结束 body 标签之后放置 javascript 时会发生什么?

  8. 8

    当我在异步回调中设置对象时会发生什么?

  9. 9

    在方法中枚举静态变量并将其设置为null时会发生什么

  10. 10

    在方法中枚举静态变量并将其设置为null时会发生什么

  11. 11

    将硬盘中的所有位都设置为1时会发生什么?

  12. 12

    在 Swift 中,当两个线程获取并设置非线程安全属性时会发生什么?

  13. 13

    暂停时会发生什么?

  14. 14

    将属性应用于python中的类方法时会发生什么情况?

  15. 15

    Python Redis pubsub:发布类型时会发生什么变化?

  16. 16

    Python:主进程终止时会发生什么。

  17. 17

    当您从《虚无》中抽奖时会发生什么?

  18. 18

    在lldb中打印Swift对象(po)时会发生什么?

  19. 19

    VHDL中的整数超出范围时会发生什么?

  20. 20

    当软件包在源中重复时会发生什么?

  21. 21

    当Final块中的代码引发异常时会发生什么?

  22. 22

    在C ++标准中,当违反“应”要求时会发生什么?

  23. 23

    在SVN中删除中继时会发生什么标记

  24. 24

    在Git中删除分支时会发生什么情况

  25. 25

    在RTOS中释放或发出信号时会发生什么?

  26. 26

    在SwiftUI中,显示操作表时会发生什么?

  27. 27

    为什么在文件中写入csv时会发生错误?

  28. 28

    当flet在递归函数中时会发生什么?

  29. 29

    当声明符(我/州)在for块中时会发生什么?

热门标签

归档